亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

替換帖子內容中的多個域

替換帖子內容中的多個域

PHP
HUH函數 2023-09-15 09:42:17
我有一個包含域的數組,我想替換 WordPress 中的內部帖子內容。我的功能很簡單,使用 preg_replace。<?phpadd_filter( 'the_content', 'filter_the_content' );function filter_the_content( $content ) {  $domains = array('domain1.com/out/','domain2.com/out/');  if ( is_single() ) {      $content = preg_replace("/^(http(s)?:\/\/)?((w){3}.)?(".implode('|', $domains)."?([a-zA-Z0-9_]{2,5}.)?(\/out)?\/.+/i", 'https://domain3.com/out', $content);  }  return $content;}?>應用過濾器后,我的內容消失了,我不知道如何讓它工作,替換數組中的域。
查看完整描述

1 回答

?
手掌心

TA貢獻1942條經驗 獲得超3個贊

在您的正則表達式中,您有兩倍的擴展名和/out/.


你可以用以下方法解決這個問題:


$content = 'blah https://domain1.com/out/ blah https://domain2.com/out/ blah https://domainXXX.com/out/ blah';

$domains = array('domain1.com/out/','domain2.com/out/');

$content = preg_replace("~(?:https?://www)?(?:".implode('|', $domains).")~i", 'https://domain3.com/out', $content);

echo $content;

輸出:


blah https://https://domain3.com/out blah https://https://domain3.com/out blah https://domainXXX.com/out/ blah

演示和解釋


查看完整回答
反對 回復 2023-09-15
  • 1 回答
  • 0 關注
  • 113 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號