如何根据$wp_Query中的metabox值更改标记

时间:2013-07-10 作者:Michael Edwards

我有一个称为“问题”的自定义帖子类型,每个问题都有一个内容页。我用发行号标记我的所有文章,因此,例如,所有发行15的文章都被标记\'issue-15\'.

我有一个内容的自定义帖子模板,我使用以下代码调用同一问题编号内的所有问题帖子。

$wp_query = new WP_Query( array( 
    \'post_type\' => \'issue\',
    \'tag\' => \'issue-14\',
    \'posts_per_page\' => 50
) );
上面写着\'issue-14\', 我需要根据名为\'issue-number\' 其中只包含问题的编号。因此,如果metabox字段为“12“我需要标签”issue-12“。

1 个回复
SO网友:mrwweb

听起来你只是在找get_post_meta(). 使用custom field 属于issue_number, 您将执行以下操作(未经测试):

$issue_number = get_post_meta( get_the_ID(), \'issue_number\', true );
$my_issue_query = new WP_Query( array(
\'post_type\' => \'issue\',
\'tag\' => \'issue-\' . $issue_number,
\'posts_per_page\' => 50
));
注意:虽然粘贴的代码可以工作,但您不想覆盖$wp_query 全新的全球WP_Query 例子相反,使用一个新的带前缀的查询特定变量来保存查询,然后像这样调用它$my_issue_query->the_post();

结束

相关推荐

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

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