我正在尝试从特定的分类法中获取所有自定义类型的帖子。这是我的代码:
$product_wood = get_posts(array(
\'post_type\' => \'product_document\',
\'post_status\' => array(\'publish\'),
\'orderby\' => \'menu_order\',
\'order\' => \'ASC\',
\'posts_per_page\' => -1,
\'tax_query\' => array(array(
\'taxonomy\' => \'cadassist_category\',
\'field\' => \'id\',
\'terms\' => array( 653 ) // wood frame
)),
\'cache_results\' => false,
\'update_post_meta_cache\' => false,
\'update_post_term_cache\' => false));
这段代码的行为很奇怪。对于某些分类法,它会为其他分类法检索帖子。例如,对于ID为653的分类法,它不会检索任何内容(空数组),而对于ID为408的分类法,它工作得非常好!
所有分类法都有与其关联的帖子。但有些工作,而另一些则不行!我试着用slug代替id。结果是一样的。
请帮助解决此问题和/或说明其为何以这种方式运行?
最合适的回答,由SO网友:Rustam Uteev 整理而成
经过几个小时的调试,我找到了问题的原因。自定义分类法“CADAAssist\\u category”用于两种自定义帖子类型:product\\u document和CADAAssist\\u file。ID为653的分类法帖子属于cadassis\\U文件类型。我试图获得product\\u文档类型的帖子。这就是为什么我得到了空数组。
所以,如果您有类似的问题,那么可能您的自定义分类法用于几种帖子类型,而您只是查询错误的帖子类型。