您应按以下方式编写:
$term_ids = array_map( function( $t ) { return $t->term_id ; }, $terms );
在代码中,还有
get_terms
直接写入分类名称的位置。这已被弃用,取而代之的是:
$terms = get_terms( array(
\'taxonomy\' => \'event-categories\',
\'hide_empty\' => false,
) );
自4.5.0以来,应通过$args数组中的“taxonomy”参数传递分类法:
第二个问题是关于为什么你的帖子是空的:
默认情况下,您将在post\\u type=post的帖子中进行搜索。
您应该像这样搜索自定义的post\\u类型:
$posts = get_posts(
array(
\'post_type\' => \'custom_post_type\',
\'nopaging\' => true,
\'tax_query\' => array(
array(
\'taxonomy\' => \'event-categories\',
\'terms\' => $term_ids ,
) ),
) );
我删除了
\'field\' => \'id\'
因为默认情况下
term_id
可接受值为:
术语分类id