我正在将Beaver Builder与WordPress配合使用,并且正在使用“高级帖子”显示我的自定义帖子类型。我有6个团队,每个团队约有30名球员。我想在球队页面上显示球队名单,但是在选择要显示的球员时不能按球队进行筛选。
我找到了这种方法:https://www.ultimatebeaver.com/docs/filter-query-parameters-advanced-posts/
但是我在比较球员和球队之间的元键时遇到了麻烦,而且不知道从哪里开始。
这是我到目前为止所拥有的:
global $post;
$current_team = $post->post_name;
if ( $settings->id == 'team-roster' ) {
$args['meta_key'] = 'team';
$args['posts_per_page'] = '30';
$args['meta_query'] =
array(
'key' => 'team',
'value' => '$current_team',
'compare' => '=',
);
}
return $args;
我正在尝试与页塞进行比较,它与meta_key中存储的值相同。
我希望每个团队页面都可以显示团队中的球员,并希望在球员页面上使用相同的模块来显示其他球员。如果这不是正确的方法,那么也要开放其他想法。
答案 0 :(得分:0)
最终使用类别而不是关系meta_key字段进行过滤。发现该关系字段存储为数组,因此未正确比较。这是我的解决方案:
global $post;
$current_team = $post->post_name;
if ( $settings->id == 'team-roster' ) {
$args['posts_per_page'] = '50';
$args['tax_query'] =
array(
array(
'taxonomy' => 'category',
'terms' => $current_team,
'field' => 'slug',
)
);
}
return $args;