从类别插件获取类别ID(不工作)

时间:2013-04-11 作者:LBF

我找到了这段代码,它显然从类别slug中获取了类别ID:

  $category = get_category_by_slug(\'category-name\'); 
  $id = $category->term_id;
但当我尝试将其实现到以下代码中时,它不起作用:

<?php
//list terms in a custom taxonomy using wp_list_categories 

$category = get_category_by_slug( \'military\' );

$args = array(
  \'taxonomy\'     => \'product_cat\',
  \'orderby\'      => \'name\',
  \'show_count\'   => 0,
  \'pad_counts\'   => 0,
  \'hierarchical\' => 1,
  \'title_li\'     => \'\',
  \'depth\'        => 2,
  \'child_of\'     => $category->term_id
);

?>

<ul class="test">
<?php wp_list_categories( $args ); ?>
</ul>
我试图只显示特定父类别的子类别。如果我只是为“child\\u of”键入类别ID,那么它就可以正常工作。但使用上述代码,它将继续显示所有类别。不幸的是,我需要通过slug来完成,而不是通过ID。

有什么想法吗?

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

您不能使用get_category_by_slug() 使用自定义分类法。您需要使用get_term_by().

$category = get_term_by( \'slug\', \'military\', \'product_cat\' );

结束

相关推荐

如何从wp_Dropdown_Categories获取类别插件

我正在自定义一个插件。我需要它来显示层次结构中的类别列表,这是我使用插件的所有功能得到的。我正在使用wp_dropdown_categories, 但我想将类别列表显示为它们的slug,而不是它们的类别名称。有什么建议吗?以下是我目前掌握的情况:function replace_id_for_slug( $option ) { $categories = get_categories( \"hide_empty=0\" ); preg_match( \'/value=\"(