Как установить категорию в продукт woocommerce

можно ли добавить категорию в сообщение woocommerce?

Я создаю свои продукты следующим образом:

// creates woocommerce product 
$product = array(
    'post_title'    => $name,
    'post_content'  => '',
    'post_status'   => 'publish',
    'post_author'   => $current_user->ID,
    'post_type'     =>'product'
);

// Insert the post into the database
$product_ID = wp_insert_post($product);

У меня есть категория под названием "Дерево", где я должен добавить указанный выше продукт. Я пробовал следующее, но без успеха. Есть ли специальный способ добавить категорию?

wp_set_object_terms($productID, array('Tree'), 'product_cat');

Ответы

Ответ 1

После некоторых проб и ошибок я решил это следующим образом:

// Creates woocommerce product 
$product = array(
    'post_title'    => $name,
    'post_content'  => '',
    'post_status'   => 'publish',
    'post_author'   => $current_user->ID,
    'post_type'     =>'product'
);

// Insert the post into the database
$product_ID = wp_insert_post($product);

// Gets term object from Tree in the database. 
$term = get_term_by('name', 'Tree', 'product_cat');

wp_set_object_terms($product_ID, $term->term_id, 'product_cat');

ссылка для получения дополнительной информации:

Ответ 2

Если вам нужно несколько категорий, просто передайте массив:

$categories = [ 'Some Category', 'Some other Category' ];
wp_set_object_terms( $product_id, $categories, 'product_cat' );