WordPress 外链转内链的两种方法

一、无插件

首先,在你当前使用主题的 functions.php 中加入以下代码

  1. add_filter('the_content','baezone_the_go_url',999);
  2. function baezone_the_go_url($content){
  3. preg_match_all('/href="(.*?)"/',$content,$matches);
  4. if($matches){
  5. foreach($matches[1] as $val){
  6. if( strpos($val,home_url())===false ) $content=str_replace("href=\"$val\"", "href=\"" . get_bloginfo('wpurl'). "/go?url=" .base64_encode($val). "\"",$content);
  7. }
  8. }
  9. return $content;
  10. }

然后在网站根目录下新建个名为 go 的文件夹,在其中写个 index.php 的文件,内容如下(请保存为UTF-8无BOM格式):

  1. <?php
  2. $url = $_GET['url']