这里的某个地方可能有答案,但我找不到它,如果我找到了,也无法识别它。情况如下:
我有一个自定义的帖子类型“region”,它显示在单个区域上。php。地区名称为北、南、东、西。
我有另一个自定义帖子类型“news”。与之关联的是一个名为“news\\u region”的自定义字段。创建新闻项时,作者需要为news\\u region(All、N、S、E、W)指定一个值。
我希望在North region页面上列出news\\u region值为“all”或“N”的所有新闻项目。
最终版本有效(感谢@milo让我走上正轨):
// get title of region page for comparison with news_region key
$this_region = get_the_title($post->ID);
// query news items with news_region All or $this_region
$args = array(
\'post_type\' => \'news\',
\'posts_per_page\' => 4,
\'meta_query\' => array(
\'relation\' => \'OR\',
array(
\'key\' => \'news_region\',
\'value\' => \'All\',
\'compare\' => \'LIKE\'
),
array(
\'key\' => \'news_region\',
\'value\' => $this_region,
\'compare\' => \'LIKE\'
)
)
);
$newslist = new WP_Query( $args );
注意:将news\\u region的值更改为“All,North region,East region,South region,West region”,以匹配完整的地区名称(与single region.php的帖子标题相同)。