我有一个网站,我列出了标题,并且由于每个标题都大于我们所需的空间,我必须使用以下代码将其分解,如果它大于一定数量的字符,然后显示.. :
<?php $title = get_the_title(); echo mb_strimwidth($title, 0, 45, '...'); ?>
有没有办法可能只列出一定数量的单词,而不是字符,所以我们至少可以在标题的末尾加上一个完整的单词而不是字符,然后......?
非常感谢任何帮助。这是在WP系统上。
答案 0 :(得分:1)
例如,您可以使用wordwrap()函数,然后丢弃除第一行之外的所有行。
答案 1 :(得分:1)
这是一个非常常见的问题,在SO上多次询问和回答。这有两个解决方案:
Trim headline to nearest word
Trimming a block of text to the nearest word when a certain character limit is reached?
答案 2 :(得分:0)
由于您使用的是多字节字符串函数,因此可以执行以下操作:
if (mb_strlen($title) > 45) {
$title = mb_substr($title, 0, 45);
// make sure it ends in a word by chomping at last space
$title = mb_substr($title, 0, mb_strrpos($title, " ")).'...';
}
echo $title;