如何使用此功能设置自定义订单

时间:2017-03-28 作者:Cristi

我有一个样本:

CODE PHP:

 <ul class="categories-list">
        <?php wp_list_categories(\'title_li=\'); ?>
 </ul>
此代码显示按名称排序的类别列表。

我想做的是定制订单。。。不按名称不按id。

例如,此顺序:

   1. Category with ID 5:

   2. Category with ID 3:

   3. Category with ID 9:
如何使用上述函数执行此操作?

3 个回复
SO网友:cjbj

你需要add term meta 到您的类别。在此元字段中,您将存储要用作自定义订单基础的字符串或数字(tutorial). 假设您生成了一个名为my_cat_meta 它保存的整数表示您希望它们按什么顺序显示。

现在可以将此元键传递给wp_list_categories. 此功能最终依赖于get_terms, 这解释了函数可以接受哪些参数。您可以将搜索限制为定义了元键并根据该元键排序的术语。这相当于:

$args = array (
  \'title_li\' -> \'\',
  \'meta_key\' -> \'my_cat_meta\',
  \'orderby\'-> \'meta_key\');
wp_list_categories ($args);
一种略显粗糙的方法是使用“description”字段,这是WP类别中的默认字段。许多主题不显示它,因此您可以使用它来存储元数据。在这种情况下,您可以跳过构建自己的元字段并使用:

$args = array (
  \'title_li\' -> \'\',
  \'orderby\'-> \'description\');
wp_list_categories ($args);

SO网友:Nehal Shah

可以使用shuffle()函数以随机顺序获取类别。像这样,

$categories = get_categories();
shuffle( $categories );
希望这对你有用!

SO网友:Harry

wp_list_categories(); 提供格式化输出,

要显示自定义布局的元素,可以使用get\\u categories()或get\\u terms()函数。

相关推荐

WpQuery中的ORDERBY不区分大小写

我正在尝试按字母顺序对自定义帖子进行排序,我刚刚意识到,大写字母的排序要先于小写字母。有两家餐厅以“Cal”和“CAT”开头,并按字母顺序将“CAT”作为第一个返回。以下是我的$参数:$args = array( \'numberposts\' => -1, \'post_type\' => \'chef\', \'meta_key\' => \'restaurant\', \'orderby\' => \'meta_