Плагин WooCommerce не устанавливает стоимость атрибута таксономии на продуктPhp

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

Сообщение Anonymous »

Я пытался внедрить решение для установки атрибутов таксономии на продуктах woocommerce. Это код, который я написал: < /p>

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

$product = wc_get_product($product_id);

$taxonomy = 'pa_out-of-stock';
$false_term_name = 'false';
$true_term_name = 'true';

$false_term_id = get_term_by('name', $false_term_name, $taxonomy)->slug;
$true_term_id = get_term_by('name', $true_term_name, $taxonomy)->slug;

$attributes = (array) $product->get_attributes();

if (array_key_exists($taxonomy, $attributes)) {
foreach (
$attributes as $key => $attribute
) {
if ($key == $taxonomy) {
$options = $attribute->get_options();
$options = array($true_term_id);
$attribute->set_options($options);
$attributes[$key] = $attribute;
break;
}
}
$product->set_attributes($attributes);
}
else {
$attribute = new WC_Product_Attribute();

$attribute->set_id(sizeof($attributes) + 1);
$attribute->set_name($taxonomy);
$attribute->set_options(array($false_term_id));
$attribute->set_position(sizeof($attributes) + 1);
$attribute->set_visible(true);
$attribute->set_variation(false);
$attributes[] = $attribute;

$product->set_attributes($attributes);
}

$product->save();
Я распечатал объект продукта $, и функция set_options () , по -видимому, изменяет значение. Но после того, как функция $ product-> save () называется, кажется, нет никаких изменений, термин атрибута, похоже, не изменяется в продукте. Я проверил идентификаторы термина, они верны. Я проверил таксономию слизняк, это также правильно. Кажется, что сохранение не работает. Есть идеи, почему это может произойти?

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

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

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

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

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

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

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