[Решено] Сплит: как лучше программно создать копию товара для другого языка
Эта тема решена. Вот описание проблемы и ее решения.
Problem: Клиент столкнулся с необходимостью программно создать копии товаров для другого языка, сохраняя при этом синхронизацию цен и категорий, и возможность независимого редактирования товара на новом языке. Solution: Мы рекомендуем использовать хуки WPML для создания дубликатов при создании товара на языке оригинала: wpml_make_post_duplicates и wpml_admin_make_post_duplicates. Для массового дублирования существующих товаров можно воспользоваться функцией в WPML → Translation Management, подробная инструкция доступна здесь: как дублировать страницы и посты массово. Также, Вы можете отображать на другом языке товары, которые еще не переведены, без необходимости дублирования, используя настройки по умолчанию для непереведенного контента: использование языка по умолчанию как запасного для непереведенного контента.
Если данное решение окажется неактуальным или не подойдет в вашем случае, мы настоятельно рекомендуем проверить известные проблемы, убедиться в актуальности версии исправления и подтвердить, что у вас установлены последние версии тем и плагинов. В случае дополнительных вопросов, пожалуйста, откройте новый тикет поддержки.
Это форум технической поддержки WPML – плагина для многоязычной WordPress.
Доступно для чтения всем, но только клиенты, купившие WPML, могут оставлять сообщения. Сотрудники WPML отвечают на сообщения форума 6 дней в неделю, 22 часов в сутки.
отключение плагинов помогло, спасибо. проблема была в плагине NikanTicket
1. появилась новая проблема. при программном сохранении товара цена не обновляется в другой языковой версии товара
$product->set_regular_price($bundle['price']);
можно вызвать какую-то функцию для синхронизации цены и других параметров? код запускается через wp cli
2. в настройках wpml есть функция копирования meta полей. если поставить copy то при каждом сохранении woocommerce товара будут обновляться мета поля или только при создании дубля товара?
3. как лучше программно создать копию товара для другого языка? с базового (англ) для ру языка. нужно чтобы при создании дубля товара скопировались все данные товара + мета поля. после создания дубля на другом языке нужно сделать чтобы товар можно было независимо редактировать на русском языке (чтобы можно было менять описание, название, permalink, seo), но осталась синхронизация цены и категорий. нужно как-то массово скопировать 4 тысячи товаров и придется часто дублировать товары, так как товары по апи синхронизируются. может есть какой-то гайд как это правильно сделать через код (wp cli)
3. как лучше программно создать копию товара для другого языка? с базового (англ) для ру языка. нужно чтобы при создании дубля товара скопировались все данные товара + мета поля. после создания дубля на другом языке нужно сделать чтобы товар можно было независимо редактировать на русском языке (чтобы можно было менять описание, название, permalink, seo), но осталась синхронизация цены и категорий. нужно как-то массово скопировать 4 тысячи товаров и придется часто дублировать товары, так как товары по апи синхронизируются. может есть какой-то гайд как это правильно сделать через код (wp cli)
Хочу отметить, что после такого, как товар будет дублирован независимо как, Вы выберите опцию переводить товар далее самостоятельно, параметры товара такие, как цена, назначенная категория и другие параметры, всегда будут синхронизированы с оригиналом.