让代码更简单

WordPress文章列表控制摘要显示字数

重要:本文最后更新于2018-11-13 13:31:27,某些文章具有时效性,若有错误或已失效,请在下方留言或联系代码狗

看到有群友问过WordPress如何显示文章摘要,文章摘要字数太多怎么办?怎么让文章摘要超过指定字数就显示省略号?等等一系列关于文章摘要的问题,今天代码狗分享下制作主题时产生文章摘要的处理办法。看下图效果,或者本站文章列表摘要效果。

WordPress文章列表控制摘要显示字数

WordPress文章列表控制摘要显示字数

获取文章摘要的方法多种多样,the_excerpt()函数就能帮我们调用文章的摘要内容。值得注意的是,这个函数只能在文章列表主循环中调用,否则会报错。什么是文章列表主循环呢?就是在

复制
<?php if (have_posts()) : while (have_posts()) :the_post();
.....
endif;
?>

类似这种查询了文章然后循环输出的时候就称为主循环,文章列表是我加的,方便大家记忆。下面的代码一样需要在这种情况下调用,否则会出现错误。

由上图我们可以发现,当文章摘要字数超过一定量之后就不会显示文字了,而是以省略号的形式表示更多内容需要读者点击查看。这个效果是如何实现的呢?

复制
<?php echo mb_strimwidth(strip_tags(apply_filters('the_content', $post->post_content)), 0, 210,"..."); ?>

上面的方法是说取出文章内容,然后去除html标签,再截取0到210的字符,最后在截取出的字符串末尾加上…三个点省略号。这样就能实现我们想要的效果了,效果和上图一样。如果你在截取文章摘要时发现字符乱码,那么可以考虑在上面的代码中加入编码转换,具体见下面代码。

复制
<?php echo mb_strimwidth(strip_tags(apply_filters('the_content', $post->post_content)), 0, 210,"...","utf-8"); ?>

相较于上面的代码,这次在代码的末尾增加一个参数,函数会自动为其转码,更多用法等待大家发掘!

有网友问如何在文章页调用摘要,很简单,只需要修改上面的函数,在singe.php文件中加入如下代码即可。

复制
<?php echo mb_strimwidth(strip_tags( the_content()), 0, 210,"..."); ?>

感觉很棒!可以赞赏支持我哟~

2 打赏

评论 (4)

登录后评论
我发你说的都是屁话,能不能写点有用的文章出来,最简单的就是使用标签more自由截取,你想截哪些文章显示就哪些显示
你应该仔细阅读,没有more标签,你怎么截?牛逼叉叉的!
正需要这个
文章不错非常喜欢
QQ咨询 邮件咨询 狗哥推荐