我一直在谷歌上搜索这个,但没有结果。
我有一堆帖子。但是它们都没有特色图像。所以我想如果所有帖子仍然具有相同的高度,看起来会更好。
如果帖子中没有特色图片,是否可以显示更长的摘录?
好的,这就是代码现在的样子:
/**
* Set the post excerpt length to 40 words.
* @param int $length The number of excerpt characters.
* @return int The filtered number of characters.
*/
function twentyeleven_excerpt_length( $length ) {
return 40;
}
add_filter( 'excerpt_length', 'twentyeleven_excerpt_length' );
也许某种 if 语句可以解决问题?你知道的:
if (featuredimage = true) {
function twentyeleven_excerpt_length( $length ) {
return 40;
}
add_filter( 'excerpt_length', 'twentyeleven_excerpt_length' );
}
else {function twentyeleven_excerpt_length( $length ) {
return 80;
}
add_filter( 'excerpt_length', 'twentyeleven_excerpt_length' );}
如您所见,我在这方面完全是新手,所以我需要一些指导。
你可以
通过以下方式将解决方案放在一起
- 创建自定义摘录函数以制作更长的摘录,如本答案所示,并将其保存在函数文件中
使用has_post_thumbnail查看帖子是否有缩略图/特色图像,然后相应地提供正确的摘录:
<?php if ( has_post_thumbnail() ) { the_post_thumbnail(); echo excerpt(25); // Short excerpt } else { echo excerpt(50); // Long excerpt } ?>
请记住,摘录是根据字长修剪的;因此您无法保证结尾高度。您可能还应该考虑使用min-height
以获得您所追求的高度。
使用高级摘录插件。 使用 has_post_thumbnail()
条件测试帖子是否有特色图片 - 如果有,则显示它 + 简短摘录(请参阅插件的使用指南,您可以通过字数、字符数、完成单词/句子等进行限制),如果没有,则显示更长的摘录。 您只需使用the_advanced_excerpt()
模板标签并传入所需的参数。