如何修改提要中的“更多”链接

时间:2017-05-19 作者:glvr

我使用一个函数来修改帖子的“阅读更多”链接。

function modify_read_more_link() {
return \'<p class="read-more"><a href="\' . get_permalink() . \'">CONTINUE READING &raquo</a></p>\';
}
add_filter( \'the_content_more_link\', \'modify_read_more_link\' );
我想为提要使用不同的文本,并想知道是否可以使用条件if来实现这一点is_feed() 标签

(我知道的还不够,我的实验要么不起作用,要么停止页面加载。)

2 个回复
SO网友:Ajay Malhotra

以下是一些技巧:

 /* Modify the read more link on the_excerpt() */

 function et_excerpt_length($length) {
 return 220;
 }
add_filter(\'excerpt_length\', \'et_excerpt_length\');

/* Add a link  to the end of our excerpt contained in a div for styling 
purposes and to break to a new line on the page.*/

 function et_excerpt_more($more) {
 global $post;
 return \'<div class="view-full-post"><a href="\'. get_permalink($post->ID) . 
\'" class="view-full-post-btn">View Full Post</a></div>;\';
}
add_filter(\'excerpt_more\', \'et_excerpt_more\');
谢谢你

SO网友:cjbj

默认WP允许您在提要中包含的摘录或完整帖子内容之间进行选择(在“设置->阅读”下)。没有选项可以将内容包含到“更多”链接中,除非您有一些插件可以为您做到这一点。因此,尝试更改提要的更多链接文本是没有用的,因为它将被忽略。

所以,如果你想让你的提要包括the_content 在阅读更多文本之前,您必须自己构建它using a filter, 像这样:

add_filter (\'the_content\', \'wpse267435_readmore\', 1, 10);
function wpse267435_readmore ($content) {
    if (is_feed()) {
        ... do stuff with $content ...
       }
    return $content;
    }
现在,处理内容包括在<!--more-->, 假设您没有使用任何更复杂的标记。这是简单的PHP:

$cut_off = strpos ($content,\'<!--more-->\');
$content = substr ($content, 0, $cut_off);
现在,您可以添加所需的任何“阅读更多”链接:

$content = $content . \'<a href="....">My special link </a>\';
Beware 1 提要是xml文件。原则上,html锚定标记是无效的xml。大多数浏览器将正确呈现您的链接,但它们也可能基于xml文件中的其他标记生成自己的链接。

Beware 2 通常,过滤器应在评估任何短代码之前进行处理。但是,如果您有一个插件或主题干扰了优先级,“”可能在您尝试在中查找它时已经不存在了the_content. 在这种情况下,降低过滤器的优先级。

结束

相关推荐

如何通过RSS从其他博客获取帖子作者的图片/头像?

我有两个网站:一个是公司网站,另一个是公司博客-这些网站位于不同的域上。在该公司网站的主页上,有一块方形瓷砖,上面有该博客的最新帖子,包括博客标题(超链接)和帖子作者的图片/头像。为了通过RSS检索最新帖子的标题,我添加了一个类似于documented here 我的职能。php。然而,我正在努力寻找一种检索作者图片的工作方法。一些插件最初吸引了我的眼球。例如,有人将帖子的特色图片添加到RSS中,从而使其可检索。但要求作者将他们的个人资料图片上传到每篇文章中的做法并不理想。有没有无插件的方法来获取作者的图