【发布时间】:2021-05-12 20:43:12
【问题描述】:
我将短代码 [products ids="1094,2811,1097,1095,1098"] 用于小部件。产品需要按照我列出的确切顺序出现,这与它们在商店中出现的顺序不同,所以我无法拖放产品订单。
我发现 here 的“orderby”选项似乎都不允许这样做。
有没有办法解决这个问题?
【问题讨论】:
标签: wordpress woocommerce
我将短代码 [products ids="1094,2811,1097,1095,1098"] 用于小部件。产品需要按照我列出的确切顺序出现,这与它们在商店中出现的顺序不同,所以我无法拖放产品订单。
我发现 here 的“orderby”选项似乎都不允许这样做。
有没有办法解决这个问题?
【问题讨论】:
标签: wordpress woocommerce
嗯,事实证明,你可以很容易地做到这一点,而无需额外的编码。
[products] 短代码使用WP_Query 调用,它也接受post__in 作为orderby 选项的值,这正是您需要的。因此,即使 woocommerce 文档中未提及此选项,它仍然有效。
[products ids="257,233,269" orderby="post__in"]
【讨论】:
如果没有额外的功能/插件,您将无法做到这一点,但您可以更改默认顺序以使用“菜单顺序”-> 转到 WooCommerce > 设置。在产品选项卡上的显示设置下,确保默认产品排序设置为“默认排序(自定义排序 + 名称)”。然后,您可以在产品编辑页面的产品数据 > 高级选项卡中编辑订单值。
【讨论】: