1 回答
TA贡献1808条经验 获得超4个赞
我们可以修复/改进一些事情,但您最紧迫的问题是
has_excerpt接受帖子或帖子 ID,更改has_excerpt($post->post_excerpt)为has_excerpt($post)trim(strip_tags($post->ID))只是给你 ID,你想要别的东西,也许是 post_titletrim(strip_tags($post->post_title))?
另外,不要setup_postdata($post)在循环中使用
使用
get_the_post_thumbnail($post, 'thumbnail', $args)而不是the_post_thumbnail('thumbnail', $args)并使用
get_the_excerpt($post)而不是the_excerpt()
注意:默认属性为get_the_post_thumbnail:
$default_attr = [
'src' => $src,
'class' => "attachment-$size_class size-$size_class",
'alt' => trim( strip_tags( get_post_meta( $attachment_id, '_wp_attachment_image_alt', true ) ) ),
];
简而言之,您的主要问题是您混淆了全局 $post 和本地范围的 $post (及其元数据)。the_post_thumbnail并 the_excerpt检查全局 $post,但has_post_thumbnail使用has_excerpt本地 $post。Plussetup_postdata($post)也会导致一些连锁问题。最好的解决方案是完全忽略全局 $post。
- 1 回答
- 0 关注
- 203 浏览
添加回答
举报
