Сохранение атрибутов продукта с помощью методов Woocommerce, которые не синхронизируются с внешним интерфейсом - PullRequest
0 голосов
/ 03 августа 2020

Это не повторяющийся вопрос.

Проблема здесь не в добавлении атрибутов за слово. Я думаю, проблема в том, чтобы связать добавленные параметры атрибута с правильными терминами. Как видно на рисунках ниже, параметры атрибутов установлены правильно, но они не связаны с их терминами (как показано на рисунке 1 [текст вместо параметра атрибута серого фона, как показано на рисунке 3]), хотя я запустил вручную set_object_terms для каждого продукта, и связь установлена ​​правильно в базе данных. они сохраняются в текстовой форме ...

enter image description here

and I need to manually click "Save attributes" in wordpress admin > product edit...

enter image description here

for it to actually register correctly in the system as can be seen here.

введите описание изображения здесь

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

Я использую методы woocommerce для обновления продуктов. Вот пример кода:

$attribute_object = new WC_Product_Attribute();
$attribute_object->set_name( $attribute_name );
$attribute_object->set_options( $value );
$attribute_object->set_visible(1);
$attribute_object->set_variation(1);
$attribute_object->set_position(0);
$attribute_object->set_id( 0 );
$new_product_attributes[$attribute_name] = $attribute_object;
$new_product->set_attributes($new_product_attributes);
                        
$new_product->save();

Как мне заставить WP синхронизировать c продукт с новыми добавленными атрибутами / значениями атрибутов?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...