让 WordPress feed 输出版权信息

N 个月这前,我介绍过给 WordPress 添加日志签名档的方法,本意是给原创文章加上一个版权信息,结果很快发现在 single.php 中加版权信息这个方面基本起不到作用,最多是给文章加个内链罢了。因为给文章加版权的最终目的,是给转载者一个明确的转载注明方式,但是善意的转载者既使没有看到版权信息也会主动自觉地添加上原文出处,然而有很多恶意采集的垃圾站都是通过 RSS 输出来获取文章内容的,在 single.php 中添加的版权信息并不能在 RSS 中输出,所以在 single.php 中添加版权的方法只能防君子,不能防小人。

今天要介绍的方法是在 WordPress 文章中 feed 输出中添加版权信息,此方法可以弥补上述的不足,不只防君子,最重要的是防止了用垃圾采集站的小人们。方法很简单,只要在 function.php 中加入以下这段代码就行:

function feed_copyright($content) {
        if(is_single() or is_feed()) {
                $content.= "<blockquote>";
                $content.= '<div>  &raquo; 转载请注明来源:<a title="Life Studio" href="http://wange.im">Life Studio</a> &raquo; <a rel="bookmark" title="'.get_the_title().'" href="'.get_permalink().'">《'.get_the_title().'》</a></div>';
                $content.= '<div> &raquo; 本文链接地址:<a rel="bookmark" title="'.get_the_title().'" href="'.get_permalink().'">'.get_permalink().'</a></div>';
        $content.= '<div>  &raquo; 订阅本站:<a title="Life Studio" href="http://feed.life-studio.cn">http://feed.life-studio.cn</a></div>';
                $content.= "</blockquote>";
        }
        return $content;
}
add_filter ('the_content', 'feed_copyright');

版权信息的样式可以自己定义,我比较懒,就直接借用了 <blockquote></blockquote> 的样式。再扩展一下,这个功能如此强大,只插版权信息是不是太浪费呢?你也可以插入广告、QQ 在线状态、个性签名……发挥你的想象吧,这些都会在输出的 feed 显示的。

方法转自辐射鱼:http://eachsite.org/auto-insert-content-after-each-post/

,,,,

相关的文章
  1. 我如果在single.php里直接写入一个is_feed 不知道可不可以实现这个效果啊 因为我想控制版权信息的具体位置 日志正文后有多个内容需要增加呢

  2. Pingback: 在WordPress文章和RSS里面插入版权信息 | 囧啊囧(vv15.com)

  3. Pingback: 为Wordpress Feed和博文添加版权信息 | 昕光游乐场

  4. Pingback: 打造Wordpress短地址之折腾篇 | 阿邙’S Blog

  5. Pingback: 新主题Green living上线测试. | 阿邙’S Blog

  6. 不好意思又被我挖掘到好东西,明天将作用于我的博客。
    烦啊,本来不想折腾那么多的,奈何,我发现我一些日志被采集了。

  7. :mrgreen: 这个方法确实好,代码我拿走啦,我是想给我那些导入文章的校内和豆瓣添加一下,要不然他们老是回复在我看不到的地方。
    p.s. 博客整体风格很不错哈

  8. 这段代码,是不是直接放在function.php中代码最后?
    适不适合所有的主题?我用的是mg12的作品Elegant Box 4.1.1,不清楚放哪比较合适,在虚拟环境中测试失败。

    • 前排插入回复。
      判断是不是feed这句没看明白,我是这么判断的
      if (is_feed())
      也就是说只要是feed输出,才会加上版权信息,要不然不输出版权信息,如果按if(!is_feed() && !is_home())这样写,就成了“在不是首页也不是feed输出时”添加信息,那么这样的话,如果碰到采集站还是会没有信息吧,采集站一般都是通过feed采集的吧。

  9. 我还想问为什么没见到版权信息呢?原来此方法还不成功。另外还有一个博客文章复制自动加版权信息的方法,不过如果针对采集站的话估计无效。