Як отримати список всіх категорій товарів [WooCommerce]

Привіт:) Іноді буває необхідно отримати всі створені для WooCommerce-магазину категорії товарів для подальшої з ними роботи. У цьому пості покажу 2 способи, як це зробити.

Список всіх батьківських категорій

/**
 * Display All created Product Categories
 * 
 * https://www.cloudways.com/blog/display-categories-in-woocommerce/
 * 
 */
function woocommerce_product_category( $args = array() ) {
    $woocommerce_category_id = get_queried_object_id();
    $args = array(
        'parent' => $woocommerce_category_id
    );
    $terms = get_terms( 'product_cat', $args );
    if ( $terms ) {
        echo '<ul class="woocommerce-categories">';
        foreach ( $terms as $term ) {
            echo '<li class="woocommerce-product-category-page">';
                // woocommerce_subcategory_thumbnail( $term );
            echo '<h2>';
            echo '<a href="' .  esc_url( get_term_link( $term ) ) . '" class="' . $term->slug . '">';
            echo $term->name;
            echo '</a>';
            echo '</h2>';
            echo '</li>';
        }
        echo '</ul>';
    }
}
add_action( 'woocommerce_before_shop_loop', 'woocommerce_product_category', 100 );

Список усіх батьківських і дочірніх категорій

function get_woocommerce_product_categories() {
    $orderby = 'name';
    $order = 'asc';
    $hide_empty = false;
    $cat_args = array(
        'orderby'    => $orderby,
        'order'      => $order,
        'hide_empty' => $hide_empty,
    );
    
    $product_categories = get_terms( 'product_cat', $cat_args );
    
    var_dump( $product_categories );

    return $product_categories;
}
add_action( 'woocommerce_before_shop_loop', 'get_woocommerce_product_categories', 100 );

Михайло Петров
Михайло Петров

Мене звати Михайло. Я є WordPress-розробником. Створюю сайти з "нуля", розробляю плагіни, оновлюю наявний функціонал та підтримую готові проєкти.

Залишити відповідь

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *