wordpress模版制作:调用文章摘要内容并限制其字数的几种方法
熟悉wordpress使用的人都知道,我们写的文章可以在主页以一种比较简短的摘要形式出现。这种调用模式是在相应主题模板中完成的,而不同的调用方法对于文章摘要显示的字数也不同。今天我就来说说我所知道调用文章摘要内容及限制字数的方法吧。
方法一:the_excerpt()函数
wordpress 内置函数the_excerpt()
是个使用频率较高的函数,它是用来获取当前文章摘要的,以[...]结尾,如果在文章中没有编辑内容摘要字段,则默认截取文章的前55个字的内容,默认截取的字段去掉HTML标签和图形,并且一定要在循环内使用。
这个标签没有任何的参数,直接使用即可。但有时候我们会不习惯用[...]结尾,或者感觉 55 个字符太少。这就需要我们来调整下functions.php文件,重新定义下函数了。
控制摘要的字数:
/*控制摘要字数*/
function new_excerpt_length($length) {
return 150;
}
add_filter("excerpt_length", "new_excerpt_length");
添加自定义结尾:
function new_excerpt_more($more) {
global $post;
return " <a href="". get_permalink($post->ID) . "">阅读更多</a>";
}
add_filter("excerpt_more", "new_excerpt_more");
更改摘要末尾的默认显示样式:
function new_excerpt_more($excerpt) {
return str_replace("[...]", "...", $excerpt);
}
add_filter("wp_trim_excerpt", "new_excerpt_more");
the_excerpt()
函数默认是以[...]结尾的,这里我们利用 php 的替换函数 str_replace 将其替换成 ...,也可以改成你自己想要的符号。
方法二:wp_trim_words()函数
这个函数是wordpress自带的函数,主要功能就是用来限制输出字数的。用它配合get_the_XXXX()
函数可以调用并限制不同文字的字数。
<?php
echo wp_trim_words( get_the_content(), 100 ); // 文章内容,限制100个字符,溢出用...
echo wp_trim_words( get_the_excerpt(), 20 ); // 文章摘要,限制20个字符
echo wp_trim_words( get_the_title(), 10 ); // 文章标题,限制10个字符
?>
这个函数只起到限制用作,但因里面的get_the_XXXX()
函数需要在循环中才能使用,所以导致整个函数都在循环中使用。
方法三:编辑文章时手动限制(笨方法,不推荐)
在我们编辑wordpress文章时,可以手动插入一个"more"标签。the_content()、the_excerpt()
函数都支持这样的调用。
前面我们详细说明了文章摘要对"more"标签的使用,这里,我在简单说明下the_content()
函数对其调用方式。
首先我们要知道“more”标签在文章编辑使用时的一些要求和某些特殊情况的调用方法,您也可以查看更多细节。
<!--more-->快速标签中的more前不得有空格。否则 <!--more-->将无法发挥作用。 <!--more-->快速标签无法在模板中运行(会被模板忽略),如single.php只会显示一篇文章。
the_content()
函数的用法定义:
<?php the_content( $more_link_text, $stripteaser ); ?>
-
$more_link_text:改变more显示的文字;
-
$stripteaser:在more属性前做店修饰。
由于这个用法比其他用法繁琐,且没有什么实际意义,所以我这里就不浪费太多给大家讲解了。需要详细了解的看相应wiki吧。