列出标题但结束最后一个字

时间:2011-01-25 18:03:35

标签: php wordpress

我有一个网站,我列出了标题,并且由于每个标题都大于我们所需的空间,我必须使用以下代码将其分解,如果它大于一定数量的字符,然后显示.. :

<?php $title = get_the_title(); echo mb_strimwidth($title, 0, 45, '...'); ?>

有没有办法可能只列出一定数量的单词,而不是字符,所以我们至少可以在标题的末尾加上一个完整的单词而不是字符,然后......?

非常感谢任何帮助。这是在WP系统上。

3 个答案:

答案 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;