我一直在订购自定义分类法。我创建了一个称为Brand 并创建了一些元标记,包括一个名为position. 现在,我想显示我的条款,订购者position 元标记。我试过这样做:
<?php
$taxonomy = \'brand\';
$term_args=array(
\'hide_empty\' => false,
\'orderby\' => \'meta_value_num\',
\'meta_key\' => \'position\',
\'parent\' => 0,
);
?>
<?php $tax_terms = get_terms($taxonomy, $
<?php foreach ( $tax_terms as $tax_term ) : ?>
<h2><?php echo $tax_term->name; ?></h2>
<?php endforeach; ?>
但正如我所见
get_terms()
不支持
\'orderby\' = \'meta_value_num\'
术语按名称排序。有没有办法按位置显示它们?
谢谢你的帮助!帕特里克
最合适的回答,由SO网友:deflime 整理而成
假设position字段中填充了数字以进行排序:查看ksort
.
<?php
$terms = get_terms(\'brands\');
// Let\'s create our own array and then reorder it
$order_terms = array();
foreach( $terms as $term ) {
$position = set_up_the_position_meta_here;
$order_terms[$position] =\'<h2>\'.$term->name.\'</h2>\';
}
// now lets reorder the array based on keys (position)
ksort($order_terms);
// time to display
foreach( $order_terms as $order_term ) {
echo $order_term;
}
?>