本篇文章给大家带来的内容是关于wordpress的excerpt()函数的用法示例,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。
问题:在wordpres中的single页面,本身引用的<?php the_excerpt(); ?>,但是在页面上显示的却是文章的内容
原因:the_excerpt(); 在excerpt没有内容的时候,会截取文章的内容。
wordpress 内置函数 the_excerpt() 是个使用频率较高的函数,它是用来获取当前文章摘要的,以[...]结尾,如果在文章中没有编辑内容摘要字段,则默认截取文章的前55个字的内容,默认截取的字段去掉HTML标签和图形,并且一定要在循环内使用(!不用循环有时候也能显示,但是有些情况就会紊乱)。
用法:the_excerpt() 函数使用的方法也非常简单,用法如下:
这个标签没有任何的参数,直接使用即可,但函数默认的设置有时候并不能满足用户的需要,比如国内用户以 以[...]结尾就很不习惯,另外截取前 55 个字符有时候会太少了,还有文章摘要的结尾是不是我们可以自定义加个更多的链接呢,这些自定义只需要在主题 functions.php 文件中加入相应的代码就可以了。
控制摘要的字数:
- /*控制摘要字数*/
- function new_excerpt_length($length) {
- return 150;
- }
- add_filter("excerpt_length", "new_excerpt_length");
return 150 是返回的字符了,两个字符一个汉字,这个可以根据自己的需要进行设置。
更改摘要末尾的默认显示样式:
- function new_excerpt_more($excerpt) {
- return str_replace("[...]", "...", $excerpt);
- }
- add_filter("wp_trim_excerpt", "new_excerpt_more")
the_excerpt() 函数默认是以[...]结尾的,这里我们利用 php 的替换函数 str_replace 将其替换成 ...,也可以改成你自己想要的符号。
添加自定义结尾:
- function new_excerpt_more($more) {
- global $post;
- return " <a href="". get_permalink($post->ID) . "">阅读更多</a>";
- }
- add_filter("excerpt_more", "new_excerpt_more");
在文章摘要的未端添加一个阅读更多的链接,这样看起来更符合用户的阅读习惯了,阅读更多可以改成自己想要的内容。
上面的代码均添加到主题 functions.php 文件中即可。
新闻热点
疑难解答
图片精选