当前职位任期是否为GET_TERMS(或TAX_QUERY)?

时间:2017-04-26 作者:FNTC

我见过很多解决方案,但似乎没有一个对我有效。。。我有一个网格关闭循环/内容打开single.php 这将按原样呈现整个网格,因此我使用下面的函数,这很好,但前提是我指定了确切的分类术语(client-1).

function my_query_args($query_args, $grid_name) {
if ($grid_name == \'client-grid\') {
    $query_args[\'tax_query\'] = array(
        array(
            \'taxonomy\' => \'category\',
            \'field\'    => \'slug\',
            \'terms\'    => \'client-1\',
        ),
    );
}
return $query_args;
}
add_filter(\'tg_wp_query_args\', \'my_query_args\');
但我想知道current post 相反,我认为下面的方法可行,但无论我做什么,它都会渲染网格中的所有帖子。

function my_query_args($terms_list, $grid_name) {
if ($grid_name == \'client-grid\') {

    $terms_list = get_terms
        (array(
            \'taxonomy\' => \'category\',
            \'parent\' => 0,
        )
    );  
}
return $terms_list;

}
add_filter(\'tg_wp_query_args\', \'my_query_args\'); 
感谢您的任何意见。

EDIT

想一想这样的事情(OBV不起作用),但有人能指出正确的方向吗?

$term_id = get_queried_object_id();

function my_query_args($query_args, $grid_name) {
if ($grid_name == \'JTS-SINGLE\') {

    $query_args[\'tax_query\'] = array(
        array(
            \'taxonomy\' => \'category\',
            \'field\'    => \'term_id\',
            \'terms\'    => $term_id
        ),
    );
}
return $query_args;

}
add_filter(\'tg_wp_query_args\', \'my_query_args\', 10, 2);

2 个回复
SO网友:FNTC

SOLVED

这就是我一直在寻找的,它就像一种魅力。

function my_query_args($query_args, $grid_name) {

$term_list = get_the_terms( get_the_ID(), \'category\' )[0]->slug;

if ($grid_name == \'JTS-SINGLE\') {
    $query_args[\'tax_query\'] = array(
        array(
            \'taxonomy\' => \'category\',
            \'field\'    => \'slug\',
            \'terms\'    => array( $term_list ),
        ),
    );
}
return $query_args;

}
add_filter(\'tg_wp_query_args\', \'my_query_args\', 10, 2);

SO网友:essexboyracer

看看wp_get_post_terms 它允许你指定一个posiID,这就是我认为你要得到的

相关推荐

使用WP_QUERY混合发布日期和发布元值

正在寻找使用自定义字段将旧帖子推送到WP\\u查询中的方法。例如,我今年有10篇文章,想将过去的2篇文章重新发布到自定义rss提要。因此,对于旧帖子,必须按照帖子日期和帖子元中的值对帖子进行排序:new post - (post date: 2018-11-11) new post - (post date: 2018-11-10) old post - (post date: 2017-05-01, post-meta date: 2018-11-09) new post - (