获取 WooCommerce 中顶级产品类别的自定义数组

哈利勒

有什么方法可以在 woocomerce 中获取顶级产品类别列表,以便在我的主题中的自定义部分中显示它们

这是我使用的代码,但它返回所有类别:

function getCategoriesList() {

    // prior to wordpress 4.5.0
    $args = array(
        'number'     => $number,
        'orderby'    => $orderby,
        'order'      => $order,
        'hide_empty' => $hide_empty,
        'include'    => $ids
    );

    $product_categories = get_terms( 'product_cat', $args );

    // since wordpress 4.5.0
    $args = array(
        'taxonomy'   => "product_cat",
        'child_of'   => 0,
        'number'     => $number,
        'orderby'    => $orderby,
        'order'      => $order,
        'hide_empty' => $hide_empty,
        'include'    => $ids
    );
    $product_categories = get_terms($args);

    $list = array();
    foreach( $product_categories as $cat ){ 
        $thumbnail_id = get_woocommerce_term_meta( $cat->term_id, 'thumbnail_id', true );
        $image = wp_get_attachment_url( $thumbnail_id );
        $link = get_term_link( $cat->term_id, 'product_cat' );
        $list[] = array($cat->term_id, $cat->name, $image, $link);        
    }

    return $list;

}

我最近添加了:

'child_of'   => 0 

但是没有任何变化。

如何使其仅适用于顶级产品类别?

LoicTheAztec

为了让它工作,缺少的参数只是(但不是'parent' => 0 'child_of'

所以你的工作代码应该是这样的(并且会正确返回你的数组:

function getProductCategoriesList() {

    // since wordpress 4.5.0
    $product_categories = get_terms( $args = array(
        'taxonomy'   => "product_cat",
        'hide_empty' => false,
        'parent'     => 0,
    ) );

    $list = array();

    foreach( $product_categories as $cat ){ 
        $thumbnail_id = get_woocommerce_term_meta( $cat->term_id, 'thumbnail_id', true );
        $image = wp_get_attachment_url( $thumbnail_id );
        $link = get_term_link( $cat->term_id, 'product_cat' );
        $list[] = array($cat->term_id, $cat->name, $image, $link);        
    }

    return $list;
}

代码位于活动子主题(或主题)的 function.php 文件或任何插件文件中。

测试和工作

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

产品类别的WooCommerce产品价格中的自定义小数

在 WooCommerce 中输出特定产品类别的自定义短代码

在Woocommerce档案中获取当前产品类别的子类别

获取Woocommerce中特定产品类别的特定产品属性值

获取WooCommerce中当前产品类别的兄弟姐妹术语ID的列表

在 Woocommerce 中获取并显示产品类别的特色图片

从Woocommerce中的子产品类别ID获取父产品类别ID

woocommerce获取产品类别ID

从WooCommerce的订单项中获取产品类别ID

获取WooCommerce中的所有产品类别

基于Woocommerce中产品类别的条件自定义结帐字段

基于WooCommerce中产品类别的自定义“缺货”文本

WooCommerce 中特定产品类别的自定义条款和条件复选框

Woocommerce 3中按产品类别的自定义购物车项目计数

在自定义家庭和产品类别档案中显示WooCommerce产品属性

WooCommerce:使用SQL查询获取产品类别的购买商品

在 WooCommerce 循环产品标题后显示来自产品类别的自定义字段

从Woocommerce档案库中的自定义显示按钮中排除产品类别

在Woocommerce中为特定产品类别添加自定义按钮

通过主题自定义Woocommerce中的产品类别面包屑链接

根据Woocommerce中的产品类别添加自定义结帐字段

根据Woocommerce中的运输区域和产品类别显示自定义消息

如何从当前的WooCommerce产品类别中获取所有产品?

在Woocommerce单一产品页面中获取产品类别名称和描述

在WP_Query中从当前产品类别术语ID获取所有Woocommerce产品

在Woocommerce中检查产品类别的产品

如何从WooCommerce中的订单项获取产品类别ID

如何在插件文件中获取 Woocommerce 产品类别

从 WooCommerce 中的最后一个产品类别术语获取“缩略图 ID”