我想要这个是因为:
我在每篇文章的开头都有一个列表项ol/ol。
2-)当wordpress显示文章摘要时,它会从文章的开头读一些单词。
3-)这将导致摘要包含帖子的导航列表。ol/ol标记内的单词。
4-)我不想在我的摘录中使用ol标签中的单词。我希望它直接超出摘录内容的/ol标记。
我的代码是:
function custom_excerpt($text) {
$pos = strpos($text, \'</ol>\');
$text = substr($text, $pos);
return $text;
}
add_filter(\'the_excerpt\', \'custom_excerpt\');
这行不通。我猜标签已经被剥离了,所以“strpos”找不到任何东西。但即使是我也会回来“…”从函数中,保留与之前相同的文本。就像我的自定义函数没有效果一样。为什么会这样?主题的功能是否会以某种方式干扰摘录代码?
SO网友:cowgill
最简单的方法是使用strip_tags()
.
// Remove all html from the excerpt.
function custom_excerpt( $text ) {
return strip_tags( $text );
}
add_filter( \'the_excerpt\', \'custom_excerpt\' );
如果您想对摘录长度进行调整,可以使用此函数。
// Trim default excerpt length from 55 chars to 20.
function custom_excerpt_length( $length ) {
return 20;
}
add_filter( \'excerpt_length\', \'custom_excerpt_length\', 99 );