也许它可以在运行时解决。wp_get_attachment_image
表示:
返回表示附件文件(如果有)的HTML图像元素,否则返回空字符串。
因此,如果设置了post meta,但给出了一个空字符串,那么我们应该删除post meta。
$default = \'<img src="\' . get_stylesheet_directory_uri() . \'/img/team-logo.png" />\';
if ( get_post_meta( get_the_ID(), \'team_page_custom_image\', true ) )
{
$get_img = wp_get_attachment_image( $post_meta_data[\'team_page_custom_image\'][0], \'medium\' );
if( !emtpy( $get_img ) )
{
echo $get_img;
}
else
{
delete_post_meta( get_the_ID(), \'team_page_custom_image\' );
echo $default;
}
}
else
{
echo $default;
}
或者,您可以使用
get_posts()
(在某些钩子或设置API中)迭代所有帖子并检查/删除孤立项。