Автоматически распределяйте продукты по категориям на основе их тегов продуктов в Woocommerce.Php

Кемеровские программисты php общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Автоматически распределяйте продукты по категориям на основе их тегов продуктов в Woocommerce.

Сообщение Anonymous »

В настоящее время у меня есть функция, которая успешно добавляет продукты в Woocommerce с помощью wp_insert_post().

Сейчас я пытаюсь отнести продукты к соответствующим категориям на основе их тегов продуктов. . Например, если товар добавлен с тегами «кольцо» или «ожерелье», он автоматически относится к категории «Ювелирные изделия».

Использование следующей функции , мне удалось добиться правильной функциональности сообщений, но мне не удалось заставить это работать для типа сообщений о продуктах, используемого в woocommerce.

Работает для сообщения:

Код: Выделить всё

function auto_add_category ($post_id = 0) {
if (!$post_id) return;
$tag_categories = array (
'ring' => 'Jewellery',
'necklace' => 'Jewellery',
'dress' => 'Clothing',
);
$post_tags = get_the_tags($post_id);
foreach ($post_tags as $tag) {
if ($tag_categories[$tag->name] ) {
$cat_id = get_cat_ID($tag_categories[$tag->name]);
if ($cat_id) {
$result =  wp_set_post_terms( $post_id, $tags = $cat_id, $taxonomy = 'category', $append = true );
}
}
}
}
add_action('publish_post','auto_add_category');
Я попытался переназначить код для работы с продуктами следующим образом:

Код: Выделить всё

function auto_add_category ($product_id = 0) {
if (!$product_id) return;
$tag_categories = array (
'ring' => 'Jewellery'
'necklace' => 'Jewellery',
'dress' => 'Clothing',
);
$product_tags = get_terms( array( 'taxonomy' => 'product_tag') );
foreach ($product_tags as $tag) {
if ($tag_categories[$tag->name] ) {
$cat = get_term_by( 'name', $tag_categories[$tag->name], 'product_cat' );
$cat_id = $cat->term_id;
if ($cat_id) {
$result =  wp_set_post_terms( $product_id, $tags = $cat_id, $taxonomy = 'product_cat', $append = true );
}
}
}
}
add_action('publish_product','auto_add_category');
Однако при создании продукта соответствующие категории не назначаются. Этот начинающий программист, путающийся в WordPress, будет очень признателен за любую помощь!

Подробнее здесь: https://stackoverflow.com/questions/467 ... s-in-wooco
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Php»