【问题标题】:How to orderby woocommerce product categories as in the order I want?如何按照我想要的顺序订购 woocommerce 产品类别?
【发布时间】:2015-05-12 10:58:12
【问题描述】:

这是查询参数。我希望我的产品按照我想要的顺序排列的类别出现。

$query_args = array(
    'post_type' => 'product',
    'post_status' => 'publish',
    'ignore_sticky_posts' => 1,
    'posts_per_page' => $post_per_page,
    'orderby' => 'name',
    'order' => 'DESC',
    'paged' => $paged,
    'tax_query' => array(
                array('taxonomy' => 'product_cat',
                      'field' => 'term_id',
                      'terms' => 12,
                      'operator' => 'NOT IN',           
                     )
     )
);
$wp_query = new WP_Query($query_args);

意思是,我想在某处的查询中指定类别顺序..

array(3,4,5,7)

类别 3 的产品将首先出现,然后是 4,然后是 5,以此类推。 我怎样才能做到这一点?试过这个插件,但它似乎不适用于自定义查询。 https://wordpress.org/plugins/taxonomy-terms-order/

【问题讨论】:

  • 不要使用$wp_query 作为您的查询变量。 $wp_query 是用于保存主查询对象的全局变量。您正在做的是破坏主要查询对象。要解决您的问题,您需要在返回的帖子数组上使用usort
  • 好的。知道了。感谢您提供的额外信息!那么在 Wordpress 中没有内置选项吗?奇怪的。谢谢。
  • 不,很遗憾没有。我的荣幸,希望你能尽快解决这个问题。 :-)

标签: php wordpress woocommerce custom-taxonomy


【解决方案1】:
  1. 只需进入外观->小部件
  2. 列表项在您添加的侧边栏下 Woocommerce 产品类别展开“Woocommerce 产品类别”
  3. List item At Order By 下拉框选择“Category Order”而不是 Name。

【讨论】:

    猜你喜欢
    • 2015-12-09
    • 1970-01-01
    • 1970-01-01
    • 2019-10-07
    • 2015-07-16
    • 2013-09-29
    • 1970-01-01
    • 2019-03-20
    • 1970-01-01
    相关资源
    最近更新 更多