我已经尝试了类似答案的所有解决方案,但在Wordpress 5.0 +上似乎没有任何作用
保存帖子时,我想将其特色图片设置为帖子内容中的第一张图片。
function auto_set_featured( $post_id, $post, $update ) {
$images = get_posts( array(
'post_parent' => $post_id,
'post_type' => 'attachment',
'post_mime_type' => 'image',
'posts_per_page' => 1
) );
set_post_thumbnail( $post_id, $images[0]->ID );
}
add_action( 'save_post', 'auto_set_featured', 10, 3);
在set_post_thumbnail()
中,如果我手动设置图像ID,它可以工作,但是似乎无法使用$images[0]->ID
,我不确定为什么这不起作用。
注意:我正在测试内容中包含多个图像的帖子,因此$images
应该返回一个数组。我还尝试在查询中使用$post->ID
和get_the_ID()
,但是它不起作用。我也尝试手动添加post_parent
答案 0 :(得分:-1)
很简单。在wordpress 5.0+中,有一个gutenberg编辑器,因此只需从编辑器中添加与特色图像相同的图像即可。我最近是这样工作的。