WordPress网站防采集的方法(feed篇)



目前大部分的博客都是通过WordPress建立的,而Wordpress本身就可以安装各种采集插件(这里就不做介绍了),因而就有很多人直接用wordpress来做采集站。当然,也有用其它博客程序或者CMS程序来做采集站的。 不过,一般的采集站都是以订阅feed为基础的,那么通过对feed进行一定的处理,就可以在某种程度上防止被采集程序强暴。

网上已经有一些Wordpress的防采集插件,有判断User-Agent的,有增加干扰文字的,这里就不做讨论了,有兴趣的同学可以搜一搜。

现在我们将博客的feed设置只显示摘要,并增加“阅读全文”链接,这样就可以防止在feed中的采集了。

1. 在Wordpress面板中,选择Settings(设置)- Reading Settings(阅读设置),选择下图中所示位置的 Summary(摘要),然后点击 Save Changes即可(中文版Wordpress可参照对应位置进行操作):

2. 在feed中加入”阅读全文“链接,找到你的模版文件中的functions.php,在<?php?> 之间添加以下代码:

/* RSS 中添加查看全文链接 @jianzhanmi.com */
function feed_read_more($content) {
    return $content . '<p><a rel="bookmark noopener noreferrer" href="'.get_permalink().'" target="_blank">阅读全文</a></p>';
}
add_filter ('the_excerpt_rss', 'feed_read_more');

保存后上传到服务器,覆盖原来的文件即可,这样在feed中就会显示”阅读全文“链接了。其实通过这种方式可以向feed中增添很多信息,甚至可以将Google Adsense的广告放进去,不过要小心,这样可能会引起订阅者的反感。

3. 还可以在feed中增添版权信息,让你的版权更加突出。同样是在functions.php中,增添以下代码(将版权信息改成你自己的)即可:

/* RSS 中添加版权信息 @jianzhanmi.com */
function feed_copyright($content) {
     if(is_single() or is_feed()) {
          $content.= "<p class='copyright'>";
          $content.= '版权所有:<a title="Hi.laser! @jianzhanmi.com" href="https://jianzhanmi.com/">Hi,laser! @jianzhanmi.com</a> <a rel="bookmark" title="'.get_the_title().'" href="'.get_permalink().'">《'.get_the_title().'》</a><br />';
          $content.= '本文链接:<a rel="bookmark" title="'.get_the_title().'" href="'.get_permalink().'">'.get_permalink().'</a><br />';
          $content.= '特别声明:除特别标注,本站文章均为原创,遵循<a href="http://creativecommons.org/licenses/by-nc/3.0/deed.zh_HK" target="_blank" rel="noopener noreferrer">CC BY-NC 3.0</a>,转载请注明出处';
          $content.= "</p><br />";
     }
     return $content;
}
//add_filter ('the_content', 'feed_copyright'); //此句可像文章内容中添加版权
add_filter ('the_excerpt_rss', 'feed_copyright');

至此,wordpress在feed中防止采集的教程就完了。


<< WordPress为外链添加Go跳转页面,仿QQ邮箱外链跳转 WordPress引用同一个目录下的所有php文件 >>
工作中
  • 作者 建站迷

    建站迷

    让天下没有难做的网站!
    解决中小型企业的无站之伤。



没有账号? 忘记密码?

社交账号快速登录