我想在WooCommerce产品目录中循环,并在下拉列表中显示它们

时间:2016-01-04 作者:Ali Zia

我想循环Woocommerce Product Catogories 并在dropdown. 我尝试了互联网上几乎所有可用的代码,但似乎它们对我不起作用。我对wordpress很陌生。有人能帮我吗?目前我正在使用此代码,但它没有返回任何内容。

<?php

$taxonomy = \'product_cat\';
$orderby = \'name\';
$show_count = 0;      // 1 for yes, 0 for no
$pad_counts = 0;      // 1 for yes, 0 for no
$hierarchical = 1;      // 1 for yes, 0 for no  
$title = \'\';
$empty = 0;

$args = array(
    \'taxonomy\' => $taxonomy,
    \'orderby\' => $orderby,
    \'show_count\' => $show_count,
    \'pad_counts\' => $pad_counts,
    \'hierarchical\' => $hierarchical,
    \'title_li\' => $title,
    \'hide_empty\' => $empty
);
$all_categories = get_categories($args);
foreach ($all_categories as $cat) {
    if ($cat->category_parent == 0) {
        $category_id = $cat->term_id;
        echo \'<br /><a href="\' . get_term_link($cat->slug, \'product_cat\') . \'">\' . $cat->name . \'</a>\';
        ?>
        <?php

        $args2 = array(
            \'taxonomy\' => $taxonomy,
            \'child_of\' => 0,
            \'parent\' => $category_id,
            \'orderby\' => $orderby,
            \'show_count\' => $show_count,
            \'pad_counts\' => $pad_counts,
            \'hierarchical\' => $hierarchical,
            \'title_li\' => $title,
            \'hide_empty\' => $empty
        );
        $sub_cats = get_categories($args2);
        if ($sub_cats) {
            foreach ($sub_cats as $sub_category) {
                echo $sub_category->name;
            }
        }
    }
}
?>

1 个回复
SO网友:Pieter Goosen

wp_dropdown_categories() 确实如此。不要让这个名称迷惑你,它不仅仅是为了内置的分类法category. 只需设置taxonomy 参数设置为自定义分类法的值。还可以查看参数列表,并根据需要进行设置。

只需在代码上做一个小说明,避免只将术语ID传递给get_term_link(), 由于需要查询db以获取术语对象,这使得函数的成本很高。您已经有了术语object,所以只需将完整的对象传递给get_term_link().

相关推荐

检查GET_TERMS请求中是否存在插件

我想让用户能够从前端创建各种自定义帖子,但根据指定的分类,返回链接到它的自定义帖子表单。因此,在获得所选分类法之后,我无法检查get\\u terms()请求中是否存在该分类法我认为这是因为in\\u array()函数在多维数组方面做得不好。因此,我在这里搜索并找到了一种方法来生成另一个克服该问题的函数,但它仍然不起作用这是我的代码:<?php $cptTax = $_GET[\'choosetax\']; $tax1List = get_terms([