我正在尝试遍历Wordpress中的所有帖子并设置缩略图,如果帖子没有。我在函数文件中使用以下代码:
$args = array('post_type' => 'posts');
$loop = new WP_Query($args);
while ($loop->have_posts()):
$loop->the_post();
$attach_id = '13057';
if (has_post_thumbnail())
{
// check if the post has a Post Thumbnail assigned to it.
}
else
{
add_post_meta($loop->ID, '_thumbnail_id', $attach_id);
}
endwhile;
它似乎没有起作用,虽然它对帖子没有任何影响,但我非常感谢你的意见,非常感谢提前。
答案 0 :(得分:1)
我真的不确定你的代码有什么问题,但也许这可以澄清一些事情:When should you use WP_Query vs query_posts() vs get_posts()?。
使用get_posts()
对我有用:
$args = array(
'numberposts' => -1,
'post_type' => 'post',
'post_status' => array('publish','future','draft')
);
$get = get_posts( $args );
if( $get )
{
$attach_id = 661; // Valid attachment ID in my system
foreach( $get as $post )
{
if ( !has_post_thumbnail( $post->ID ) )
add_post_meta( $post->ID, '_thumbnail_id', $attach_id );
}
}