WordPress截取摘要的2种方法
今天来介绍一下WordPress截取摘要的2种方法,常规的方法是使用the_excerpt()函数或the_content()函数+more标签。前者使用虽然方便,但不够灵活,摘要输出字数以及more标识还得通过钩子来修改;后者相对前者来说虽然灵活一点,但却又不够智能,每次都得在文中手动插入more标签来指定摘要的输出范围。
下面要介绍的两个函数相对上面的这两个函数来说要更为灵活,也更为智能一些。摘要字数、more标识都可以直接通过参数来指定,比较适合需要在不同页面或loop中输出不同字数的摘要的应用场景。
mb_strimwidth()
这个函数是PHP的原生函数,用法:mb_strimwidth( string $str, int $start, int $width, string $trimmarker,string $encoding )
前3个参数是必需的,分别是:待截取的字符串;从第几个字符开始截取;一共截取多少个字符。
后2个是可选参数,分别是:省略标识,比如“……”之类的;字符编码,比如“UTF-8”。
在WordPress中可以这样使用:
- <?php echo mb_strimwidth(strip_tags(get_the_content()), 0, 250,"……"); ?>
strip_tags(get_the_content())这段对应的是第一个参数$str,也就是WordPress的文章内容。加上strip_tags()函数是为了过滤掉HTML等标签,只输出纯文本内容。
后面的0、250以及“……”分别对应的是从第一个字符开始截取;一共截取250个字符;以“……”作为省略标识( 也就是在最后一个字符后面加上省略号)
需要注意的是,此函数截取的汉字的字数与字符编码有关,对UTF-8编码来说,一个汉字大概占用3个字节。
还没有任何评论,你来说两句吧