是否可以调整摘录以显示文本or 一张图片or 一个视频?
下面的代码可以显示以上所有内容,但我真的想限制它,这取决于帖子中包含的内容。。
<?php
function improved_trim_excerpt($text) {
global $post;
if ( \'\' == $text ) {
$text = get_the_content(\'\');
$text = apply_filters(\'the_content\', $text);
$text = str_replace(\'\\]\\]\\>\', \']]>\', $text);
$text = preg_replace(\'@<script[^>]*?>.*?</script>@si\', \'\', $text);
$text = strip_tags($text, \'<iframe>, <p>, <img>\');
$excerpt_length = 66;
$words = explode(\' \', $text, $excerpt_length + 1);
if (count($words)> $excerpt_length) {
array_pop($words);
array_push($words, \'[...]\');
$text = implode(\' \', $words);
}
}
return $text;
}
?>
<?php
remove_filter(\'get_the_excerpt\', \'wp_trim_excerpt\');
add_filter(\'get_the_excerpt\', \'improved_trim_excerpt\');
?>
最合适的回答,由SO网友:mrwweb 整理而成
我鼓励您考虑使用post格式。你可以看到my answer to a similar question 关于修改“阅读更多”文本,但它同样适用于您。对于视频部分,您可能希望创建一个自定义字段来保存视频URL,但如果不是这样,我想这将非常容易设置。
与其过滤摘录,还可以选择替换the_excerpt()
使用:
get_template_part( \'excerpt\', get_post_format() );
那么你可以使用
excerpt.php
对于默认/回退代码段,
excerpt-video.php
用于视频,以及
excerpt-image.php
用于图像。或者,您可以在过滤器中使用类似的内容来测试post格式:
if( get_post_format() == \'video\' ) { // etc...