获取所有定制帖子分类并仅展示其中的一部分

时间:2017-10-31 作者:Marcelo Henriques Cortez

我有一个自定义的post类型,它有几个分类法。

对于每一个,我需要展示如下内容:

Taxonomy name: Taxonomy value
因此,由于我的帖子有以下分类树:

Categories -> Bikes

Bikes Models -> Model 1

Bikes Brands -> Brand 1

Genre -> Male
我需要显示它们各自的名称和值。

我得到了所有的帖子分类法,但我需要“删除”其中的一部分。

This is my code:

$args = array(
\'post\' => $post->ID,
\'before\' => \'<p class="meta">\',
\'sep\' => \' \',
\'after\' => \'<p class="meta">\',
\'template\' => \'%s  %l<br/>\',
);

That produces:

- Categorias | Acessório
- Tipos de Acessórios | Tipos de Acessórios 2
- Modelos de Acessórios | Modelos de Acessórios 3
- Marcas de Acessórios | Marca de Acessório 3
- Tamanhos | XL
- Gênero | Masculino
- Material Quadro | Carbono
- Extras |  Com garantia, Como novo, Dobrável, Dupla-Suspensão, Excelente estado, Exclui pedais, Exclui pneus, Exclui rodas, Pouco uso, Preço negociável, Sem selim e Tem amortecedor trás
问题是:

我需要排除一些分类法(Categorias、Tipos de Acesssórios、Modelos de Acesssórios、Marcas de Acesssórios&Extras)我需要显示的分类法在每个项目上总是不同的。但我需要排除/隐藏的内容将始终相同

1 个回复
最合适的回答,由SO网友:Marcelo Henriques Cortez 整理而成

好吧,我设法做到了get_the_taxonomies()Codexunset() PHP Manual

So, here is how the final code looks like:

//define the arguments so the output will have the format I want
$args = array(
    \'template\' => __( \'%s: %l.\' ), 
    \'term_template\' => \'<a href="%1$s">%2$s</a>\',
);
//get the array and store it
$taxList = get_the_taxonomies( $post->ID, $args );
//remove the categories I don\'t want based on their slug
unset($taxList[\'categorias\']);
//Show the list without the ones specified above
print_r($taxList);

结束

相关推荐

获取所有定制帖子分类并仅展示其中的一部分 - 小码农CODE - 行之有效找到问题解决它

获取所有定制帖子分类并仅展示其中的一部分

时间:2017-10-31 作者:Marcelo Henriques Cortez

我有一个自定义的post类型,它有几个分类法。

对于每一个,我需要展示如下内容:

Taxonomy name: Taxonomy value
因此,由于我的帖子有以下分类树:

Categories -> Bikes

Bikes Models -> Model 1

Bikes Brands -> Brand 1

Genre -> Male
我需要显示它们各自的名称和值。

我得到了所有的帖子分类法,但我需要“删除”其中的一部分。

This is my code:

$args = array(
\'post\' => $post->ID,
\'before\' => \'<p class="meta">\',
\'sep\' => \' \',
\'after\' => \'<p class="meta">\',
\'template\' => \'%s  %l<br/>\',
);

That produces:

- Categorias | Acessório
- Tipos de Acessórios | Tipos de Acessórios 2
- Modelos de Acessórios | Modelos de Acessórios 3
- Marcas de Acessórios | Marca de Acessório 3
- Tamanhos | XL
- Gênero | Masculino
- Material Quadro | Carbono
- Extras |  Com garantia, Como novo, Dobrável, Dupla-Suspensão, Excelente estado, Exclui pedais, Exclui pneus, Exclui rodas, Pouco uso, Preço negociável, Sem selim e Tem amortecedor trás
问题是:

我需要排除一些分类法(Categorias、Tipos de Acesssórios、Modelos de Acesssórios、Marcas de Acesssórios&Extras)我需要显示的分类法在每个项目上总是不同的。但我需要排除/隐藏的内容将始终相同

1 个回复
最合适的回答,由SO网友:Marcelo Henriques Cortez 整理而成

好吧,我设法做到了get_the_taxonomies()Codexunset() PHP Manual

So, here is how the final code looks like:

//define the arguments so the output will have the format I want
$args = array(
    \'template\' => __( \'%s: %l.\' ), 
    \'term_template\' => \'<a href="%1$s">%2$s</a>\',
);
//get the array and store it
$taxList = get_the_taxonomies( $post->ID, $args );
//remove the categories I don\'t want based on their slug
unset($taxList[\'categorias\']);
//Show the list without the ones specified above
print_r($taxList);

相关推荐