仅当父状态为发布时才获取图像

时间:2012-05-10 作者:Katherine

我有一个网站,它为每个图像使用一个自定义模板页面,用户可以喜欢一个图像。然后,我会拉一页最受欢迎的图片:

$args = array(
\'post_type\' => \'attachment\',
\'post_mime_type\' => \'image/jpg\',
\'post_status\'=>\'inherit\', // there for testing
\'meta_key\' => \'favorites\',
\'orderby\'=>\'meta_value_num\',
\'order\'=>\'DESC\',
\'posts_per_page\'=>25,
\'nopaging\' =>true
  );
$query = new WP_Query( $args );
但是,我只想在父帖子状态为“发布”时显示图像。

有时,状态会暂时更改为“草稿”,然后再更改为“发布”-这是通过编程实现的,并根据属于该作者的所有帖子的作者ID完成。

我只能看到两种可能的方法:

更改父级的发布状态时,将属于此作者的附件的发布状态设置为某个状态(草稿?待定?其他内容?)然后在恢复作者帖子时将其改回inherit。然而,当我尝试这样做时,附加图像的状态保持不变,因此WP中必须有一些功能来阻止它。

在显示之前,请检查每个图片的父帖子状态,但这意味着要调用25个数据库(糟糕),也意味着我不一定会得到25个图片(不是灾难)。

有3吗?

1 个回复
SO网友:Jacek Kaniuk

由于可能没有那么多带有图像的未发布帖子,您可以将其从WP\\U查询中排除,添加:

\'post_parent\' => \'-12,-34,-56\'
这只会增加一个查询获取这些帖子id的开销

结束

相关推荐

使用新的WP-Query()从循环中过滤后期格式;

嗨,我目前正在为我的博客构建一个主题。下面的代码指向最新的帖子(特色帖子)。因为这将有一个不同的风格比所有其他职位。然而我想过滤掉帖子格式:链接使用我在循环中定义的WP查询,因为它给我带来了更多的灵活性。我该怎么做呢? <?php $featured = new WP_Query(); $featured->query(\'showposts=1\'); ?> <?php while ($featured->have_post