去掉 WordPress 继续阅读链接中的 #more-postid

/ 2,572 阅读 / 0

使用 WordPress 做站的博主为了使文章在主页显示文章部分内容,都会在写文章时插入 more 标签,文章发布后,在首页或者栏目页就会显示出来 [继续阅读] 的超链接,细心的站长肯定会发现,WordPress 怎么在我的网址后面加了 #more-postid

不想要这样的功能,怎么办?


例如:

本站文章固定地址为

http://www.bugcc.com/***.html

但是 “继续阅读” 的链接地址却是

http://www.bugcc.com/***.html#more-***.


这种情形的缺点是别人点加有 #more-postid 网址的时候,并不是从文章的最上面显示,而是会从 [继续阅读] 以下的内容开始显示,而如果你的 [继续阅读] 的前面又是很长的话,读者大大还要返回文章顶部才能看到完整的内容。

要对 #more-postid 部分进行优化,其实方法也很简单,只需要在子主题的 functions.php 中加上下面的代码即可解决问题:

function remove_more_link_scroll( $link ) {
    $link = preg_replace( '|#more-[0-9]+|', '', $link );
    return $link;
}
add_filter( 'the_content_more_link', 'remove_more_link_scroll' );

保存并上传 functions.php 文件到子主题中,更新一下文章,搞定。

如果你已经在子主题的 functions.php 文件中添加过其他的功能。记得备份原文件。