Биржи Сайтов

Импорт XML и YML фидов с динамическими полями WordPress + Wp All Import + Woocommerce

Полезное

Код для правильной обработки файлов импорта XML и YML с динамическими параметрами для Wp All Import

Зачастую приходится загружать товары в виде XML или YML фидов, которые содержат динамические параметры для атрибутов, описаний, цен и тд. Например фид с такой структурой:

Настроить импорт таких фидов не получится простым перетаскиванием полей, как это делается обычно в плагине Wp All Import. На скриншоте ниже 4 поля атрибутов. Два первых настроены верно, а два последних настроены не верно. При такой настройке атрибуты «Материал» и «Размер» будут подтягивать данные с 11 и 12 полей field, но главная проблема в том, что в другом товаре может быть другое количество атрибутов и соответственно под номерами 11 и 12 может оказаться совсем другой атрибут, в результате чего импорт пойдет вперемешку уже со второго товара.

Для этого нам нужно добавить регулярное выражение вот такой конструкции:

				
					{field[@name="Название"]}
				
			

Имена полей и ключ атрибута «Название» нужно будет заменить на соответствующие вашему фиду. Смотрим, чтобы все настройки соответствовали:

Теперь самое важное, нужно добавить скрипт в файл functions.php вашей текущей темы.

				
					// Скрипт обработки XML и YML для Wp All Import
function roomble_is_xml_preprocess_enabled( $is_enabled ) {
    return false;
}
add_filter( 'is_xml_preprocess_enabled', 'roomble_is_xml_preprocess_enabled', 10, 1 );
				
			

Оцените статью
Добавить комментарий