如何动态限制wordpress the_excerpt()
How to limit wordpress the_excerpt() dynamically
我正在尝试限制 WordPress post 摘录,我已经尝试了一些方法来做到这一点,但所有这些都不是我需要的东西,简而言之,我想限制 post 摘录了一个我在各处都使用但有差异的数字。
例如,我需要制作一些我使用它的东西:
<?php the_excerpt('30') ?>
对于这部分代码,我想将摘录限制为 30 个字符,而在另一个地方,我想使用不同的值,例如:
<?php the_excerpt('150') ?>
它在 WordPress 中吗?
您可以这样缩短摘录:
function shorten( $s, $num, $dots ) {
if ( $num < mb_strlen( $s ) ) {
$fs = mb_substr( $s, 0, $num );
for ( $i = mb_strlen( $fs ); $i >= 0; $i -- ) {
if ( mb_substr( $fs, $i, 1 ) == ' ' ) {
return mb_substr( $fs, 0, $i + 1 ) . $dots;
}
}
return $fs . $dots;
} else {
return $s;
}
}
然后您可以这样称呼它:shorten(get_the_excerpt(), 40, '...')
(如果您愿意,可以将点替换为其他内容或什么都不替换)。
(Source)
我正在尝试限制 WordPress post 摘录,我已经尝试了一些方法来做到这一点,但所有这些都不是我需要的东西,简而言之,我想限制 post 摘录了一个我在各处都使用但有差异的数字。
例如,我需要制作一些我使用它的东西:
<?php the_excerpt('30') ?>
对于这部分代码,我想将摘录限制为 30 个字符,而在另一个地方,我想使用不同的值,例如:
<?php the_excerpt('150') ?>
它在 WordPress 中吗?
您可以这样缩短摘录:
function shorten( $s, $num, $dots ) {
if ( $num < mb_strlen( $s ) ) {
$fs = mb_substr( $s, 0, $num );
for ( $i = mb_strlen( $fs ); $i >= 0; $i -- ) {
if ( mb_substr( $fs, $i, 1 ) == ' ' ) {
return mb_substr( $fs, 0, $i + 1 ) . $dots;
}
}
return $fs . $dots;
} else {
return $s;
}
}
然后您可以这样称呼它:shorten(get_the_excerpt(), 40, '...')
(如果您愿意,可以将点替换为其他内容或什么都不替换)。
(Source)