本文是《让WordPress 在RSS 中Feed 输出支持“More”标签》的姊妹篇,相信你也知道,WordPress摘要输出文章是惨不忍睹的,但是全文输出又不和博主的意愿。我们可以截断部分文字输出,配合加上版权信息,完美解决!
要截断文字输出的话,相信你也知道了,是用 mb_strimwidth
函数,下面直接献上Jeff的代码吧——Jeff的阳台 就是用这段代码的:
//在RSS 中Feed 截断文字输出 devework.com function dw_readmore_rss( $content ){ $content = mb_strimwidth($content , 0, 500, '.....'); $readmore = '<p><a href="'.get_permalink().'">[ 前往 Jeff的阳台 阅读全文... ]</a></p><hr/>'; $cprightfeed = '<p></p><span style="font-weight:bold;">原文链接:</span>来自 <a href="'.home_url().'">'.get_bloginfo('name').'</a> | <a rel="bookmark" title="'.get_the_title().'" href="'.get_permalink().'">'.get_permalink().'</a> <br/><span style="font-weight:bold;">版权声明:</span> 原创文章采用 <a rel="nofollow" href="http://creativecommons.org/licenses/by-nc-sa/3.0/" title="署名-非商业性使用-相同方式共享">BY-NC-SA</a> 协议进行授权 | Jeff的阳台 ,版权所有,转载请用明链标明本文地址。 <br/><span style="font-weight:bold;">本站相关:</span> <a href="http://www.jianhui.org/about">关于本站</a> | <a href="http://www.jianhui.org/contact">联系站长</a> | <a rel="nofollow" href="https://me.alipay.com/majianhui">捐助作者</a> | <a rel="nofollow" href="http://www.jianhui.org/random">随机文章</a> | <a href="http://devework.com">DeveWork</a> | <a rel="nofollow" href="http://weibo.com/jh2316">新浪微博</a> </p> '; $content = $content.$readmore.$cprightfeed; return $content; } add_filter( 'the_content_feed' ,'dw_readmore_rss' ); |
效果图么,订阅Jeff的阳台你就知道了,与下图差不多:
这个代码的截断有点问题。。如果HTML在截断位置的话,会把HTML截断导致失效的HTML。Jeff能不能帮忙解决一下呢
对呀,我也发现这个bug了,有空的时候再想想办法了