3

上下文:使用带有 jigoshop 插件的 Wordpress

我正在使用 wp_list_categories 带来运行良好的产品类别并带来所需的列表。唯一的问题是类别的顺序。我使用了几个 orderby 选项(名称、ID、slug),但列表顺序仍然如下所示:

工具和刷子 卸妆和底漆 粉末 唇部 荧光笔 粉底 眼部 遮瑕 古铜色 腮红

jigoshop 小部件具有以下代码:

$args = array(
    'orderby'       => 'name',
    'show_count'    => $count,
    'hierarchical'  => $is_hierarchial,
    'taxonomy'      => 'product_cat',
    'title_li'      => null,
);
wp_list_categories(apply_filters('widget_product_categories_args', $args));

我将通过添加过滤器来替换它:

add_filter('widget_product_categories_args','myFun');
function myFun($out){
    .......
    .......
    $args = array(
    'orderby'            => 'name',
    'order'              => 'ASC',
    'style'              => 'list',
    'show_count'         => 0,
    'hide_empty'         => 0,
    'child_of'           => $topMostParent,
    'hierarchical'       => 1,
    'title_li'           => '',
    'current_category'   => $cur_cat,
    'taxonomy'           => $taxonomyName,
);  
return $args;
}

我也尝试过停用其他插件,但对结果没有影响。请帮忙。谢谢。

4

1 回答 1

1

最有可能的是,
某个地方另一个过滤器正在改变这些可能的参数。
为了执行它们:

  • get_categories_taxonomy
  • get_terms_args
  • get_terms
  • get_terms_orderby <--最有可能?
  • list_terms_exclusions
  • get_terms_fields
  • terms_clauses
  • get_terms (再次)
  • get_terms (再来再来)
  • wp_list_categories

这些分为3个主要功能(可能影响结果的功能)

  • wp_list_categories
    • get_categories
      • get_terms

我建议从get_terms_orderby过滤器开始。

如果这不起作用,我会尝试使用该功能get_terms 这样你至少会知道它是否在哪个级别出错。

希望这会有所帮助,让我知道;)

于 2012-12-01T09:11:06.507 回答