我有一个带有metro\\u creativex主题的站点,该站点带有按字母顺序显示类别的侧菜单。现在,我需要按照自己的顺序(不是字母倒序或id)对它们进行排序,因为在我的页面上,它调用了一个函数来显示侧菜单,所以在这一行的函数上,我已经修改过,只显示我需要的类别:
$metro_creativex_terms = get_categories(\'hide_empty=0&exclude=1,22,23,24,49\');
现在,我不想告诉它不要显示空类别,也不想通过id隐藏其他类别,而是想告诉他按以下确切顺序显示类别:47、44、43、45、42、41、40、25、46。我也不需要任何其他类别,所以我正在寻找一种真正严格的顺序
变量的使用方式如下:
<?php
$metro_creativex_terms = get_categories(\'hide_empty=0&exclude=1,22,23,24,49\');
if ($metro_creativex_terms) {
foreach( $metro_creativex_terms as $metro_creativex_term ) {
$metro_creativex_post_nr = $metro_creativex_term->count;
if ( $metro_creativex_post_nr == "1" )
$metro_creativex_post_nr_display = "song";
else {
$metro_creativex_post_nr_display = \'songs\';
}
echo \'
<a href="\' . get_category_link( $metro_creativex_term->term_id ) . \'" class="color-code" title="\' . $metro_creativex_term->name.\'">
\' .\'<span>\'. $metro_creativex_term->name.\'</span>\'.\'
<div class="read bg-code">
<p>\'.$metro_creativex_post_nr.\'</p><span>\'.$metro_creativex_post_nr_display.\'</span>
</div>
</a>\';
}
}
?>
甚至可以按我的自定义顺序对类别进行排序吗?
最合适的回答,由SO网友:Jevuska 整理而成
在get\\u categories上按类别id的确切顺序EliChan,使用get_categories
, 如果你使用exclude
. 使用效果更好include
作为ids order和的参数orderby
有价值的include
.
$args = array(
\'hide_empty\' => 0,
\'orderby\' => \'include\',
\'include\' => array( 47, 44, 43, 45, 42, 41, 40, 25, 46 ) //exact order id
);
$metro_creativex_terms = get_categories($args);
你可以看到
get_terms
对于可接受的价值观
$args
.