Using WHERE on a WP_Query

时间:2013-11-05 作者:marcelo2605

我有两种自定义帖子类型:BooksSubjects. 对于此项目,我使用Super CPT创建自定义帖子类型:

$books = new Super_Custom_Post_Type( \'book\', \'\', \'book\', $register = array(
        \'supports\' => array( \'title\', \'editor\', \'thumbnail\'),
        )
);

$subjects= new Super_Custom_Post_Type( \'subject\', \'\', \'\', $register = array(
        \'supports\' => array( \'title\', \'editor\'),
        \'hierarchical\' => true,
        ) 
);
为了选择本书的主题,我创建了一个元框和来自主题的值:

$profissionais->add_meta_box( array(
        \'id\' => \'subjects\',
        \'context\' => \'side\',
        \'fields\' => array(
              \'subjects\' => array( \'type\' => \'select\', \'label\' => \'\', \'data\' => \'subject\', \'multiple\' => \'multiple\' )
        )
) );
现在,我需要在每个主题的页面上显示与此主题相关的书籍。我从以下内容开始:

$args = array(
  \'post_type\' => \'book\',
);
$books = new WP_Query($args);
但我不知道如何前进。我正在尝试这样做:

SELECT book_title FROM books WHERE subject = subject page title

UPDATE

已解决!

$current = get_the_ID();

 $args = array(
   \'post_type\' => \'book\',
   \'posts_per_page\' => -1,
   \'meta_key\' => \'subjects\',
   \'meta_value\' => $current,
 );

 $books = new WP_Query($args);

1 个回复
最合适的回答,由SO网友:tfrommen 整理而成

如果我理解正确,您需要以下内容:

$args = array(
    \'post_type\' => \'book\',
    \'posts_per_page\' => -1,
    \'meta_key\' => \'subject\',
    \'meta_value\' => YOUR_SUBJECT_PAGE_TITLE,
);
$books = new WP_Query($args);
这就是你想要实现的吗?

另外,请看一下WP_Query.

结束

相关推荐

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

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