Woocommerce 类别订单

问题描述 投票:0回答:5

我正在尝试按默认字母顺序重新排列我的类别。

我的管理后端我的类别如下所示:

在前端,它们看起来像这样:

是否可以按照我在后台排序的方式显示它们?

php wordpress sorting woocommerce
5个回答
14
投票

类别顺序和分类术语顺序插件将允许您执行此操作。它将向后端添加一个拖放可排序界面,您所做的更改将同时在后端和前端生效。


8
投票

如果您使用 Woocommerce 短代码显示类别,则有更简单的方法 - 将

orderby="menu_order"
添加到短代码中。所以对我来说它看起来像这样:

echo do_shortcode( '[product_categories orderby="menu_order"]' )

6
投票

将其添加到您的参数列表中

$args = array(
       
          'orderby'=>"menu_order",
  );

在用于循环参数的数组中,使用本机 Wordpress 功能来实现 OP 的目标......而不是在不需要的地方安装另一个插件。 “谢谢你:@aronmoshe_m”


1
投票

虽然批准的答案有效,但还有另一种方法使用默认的 woo 功能,无需额外的插件。 首先查看: get_woocommerce_term_meta( $sub_category->term_id, 'order', true )

然后获取所有类别并使用此顺序对数组进行排序。

$sortedMenu = array(); // new array
// menu var should be get_categories or taxonomy function return
// I also added order key/val in my category/term array item (along with other terms name, id etc)
// Then I sorted them like bellow
foreach( $menu as $key => $item ) $sortedMenu[$key] = $item['order'];
array_multisort( $sortedMenu, SORT_ASC, $menu );

-1
投票

我确实相信您可能需要一个额外的插件来进一步自定义类别的排序选项。

如果您正在使用的主题中没有任何类似的功能,请尝试查找 Woocommerce 产品存档定制程序或类似的插件。

© www.soinside.com 2019 - 2024. All rights reserved.