对WordPress评论里的链接的处理

碎碎の念编程开发 2013-10-086455℃ 26 0

前言

昨天有一个小家伙明目张胆的在评论里留网址,哎呀,这样可不好,现在这主题的评论是会自动链接网址的,这给搜索引擎的印象可不好。

原来星铃丹的方法

直接去掉自动链接,修改wp-includes下的某文件

注释掉:

add_filter( 'comment_text', 'make_clickable',9 );

这方法有效,但每次WordPress升级后都要重新修改;今天无意看到含有此功能的一个小插件,顿悟,原来可以如此:在模板的functions.php里加上这句代码就行了。 「记得要放在?>标记之前」

remove_filter('comment_text', 'make_clickable', 9);

外链转内链

星铃丹的方法太粗暴了,个人感觉不是很好,所以也有了现在外链转内链的做法,由于「馒头」同学问到,就放出来了,然后作者改为自己了。

把下面一串代码放到主题的functions.php里边,注意检车代码冲突,有可能你的主题自带了对链接处理的功能

add_filter('the_content','doufuru_the_go_url',999);//对文章内容的处理
add_filter('comment_text','doufuru_the_go_url',999);//对评论内容的处理
function doufuru_the_go_url($content){
    preg_match_all('/href="(.*?)"/', $content,$matches);
    if($matches){
        foreach($matches [1] as $val){
            if( strpos($val,home_url())===false ) $content =str_replace("href=\"$val\"", "href=\"" . get_bloginfo(‘wpurl’). "/go ?url=" .base64_encode($val). "\"",$content);
        }
    }
    return $content;
}// /go?url= 相当于 /go/index.php?url=

然后仅仅靠那段代码链接会变得无法访问。

你需要建立一个与'wp-admin'同级的'go'资料夹(也就是WordPress目录内新建一个go文件夹),然后望里边放一个'index. php',该'index.php'的代码为

<?php
    $url = $_GET[‘url’];
    $url = base64_decode($url);
    header(“Location:” . $url );
?> 

如果不喜欢base64的话那就吧带base64字眼的函数去掉

最后

这个转内链的可以可以自由发挥的,例如加入adf.ly的网赚短链,或者配合自己的极短网域来自动短链,然后没有然后了。

打赏
您的大名:
万水千山总是情,给个打赏行不行。 打赏
评论 (26)
  • 馒头

    很多时候都需要链接。

    不对像我这种有双击文字转跳链接脚本的人来说没有 链接 没关系啊。
    〰〰〰〰〰〰〰〰〰〰〰

    回复
    • Ryan

      我現在改了,改成自動內鏈了 :idea:

      回复
      • 馒头

        留别人的链接对SEO不好? 那我们名字的链接没事吧?
        是内链再自动跳转吗? 怎么弄的?

        试下 http://tieba.baidu.com/f?kw=firefox&tp=0

        回复
          • Ryan

            這個不知道,還有這個跟主題有關的,有的主題自動nofollow

          • 馒头

            刚刚发现 原来 wp 自己有 rel="nofollow",可是好像百度不管这个。。。

          • Ryan

            打錯字了

          • 馒头

            还要请教下:建立一个與wp-admin的go資料夾 ???

          • 馒头

            好快的速度。谢谢。

        • Ryan

          名字鏈接是直鏈的,有些人不乖,直接了當的打廣告,博客我不管,成人用品都有留過 :arrow: ,待會我更新一下這篇文章吧,把方法發出來

          回复
          • 若水

            恶意代码详情:http://zww.me/archives/25361

          • 若水

            小心点,大前端盗版主题被人注入恶意代码过,会上传数据库。

          • Ryan

            這份主題是別人發給我的,加了幾段啃爹代碼

          • 若水

            原來是盜版的問題,什么意思?

          • Ryan

            原來是盜版的問題

          • 若水

            这是wp默认页面,有的,只能说d8主题把系统默认设置给改了。http://www.rusu.ga/?p=1#comments

          • Ryan

            我用D8主題之後轉門看過頁面代碼,真的沒有

          • 若水

            其实留言不知道从多少版本开始,wordpress就自动默认nofollow了,国外还有专门插件去除评论栏nofollow属性的,还是5星好评。 :arrow:

  • 李明

    我留言時不喜歡留鏈接的。 :cool:

    回复
    • Ryan

      oh,可以了謝謝李明同志

      回复
    • Ryan

      李明同志,你的外鏈工具不支持ru域名啊

      回复
  • 优搜

    后台设置了超过1个链接就要审核、、、、我是不是太严格了。。

    回复
  • 免费部落

    鄙视这些留非法链接的,不过加nofollow也可以

    回复
    • Ryan

      我還是喜歡沒有鏈接

      回复
Top