• Никакой политики на форуме. Иначе - бан!
  • Вопрос без рабочей ссылки на проблему считается риторическим. Без ссылки и скриншота - провокацией!
  • Темы озаглавленные с маленькой буквы или капсом удаляются без предупреждения!

Импорт товаров php из xml

transparty

Новичок
Добрый день.
Усть сайт с готовым импортом, но надо добавить несколько атрибутов к товарам.
С атрибутом имеющим два значения я разобрался и сделал по подобию
PHP
PHP:
        $v = $imported_product->attrs['Размещение бутыли'];

        $k = null;

        switch($v) {

            case NULL:

            case 'нет':

            case 'сверху - на кулере':

                $k = 'Сверху';

            break;



            case 'снизу - внутри кулера':

                $new_tags[] = 'Бутыль внутри';

                $k = 'Внутри';

            break;



            default:

                throw new Exception("Не определено положение бутыли " . (string)$imported_product . ": " . $v);

            break;

        }

        $new_attrs[] = $this->getAttributeWithTerm($k, 'buttleplace');

Но когда атрибут содержит много значений и они могут появиться новые в файле xml производителя, то в готовом применяется такой код

PHP
PHP:
        $imported_product->attrs['Цвет'] = str_replace('ё', 'е', $imported_product->attrs['Цвет']);

        $new_attrs[] = $this->getAttributeWithTerm(my_mb_ucfirst($imported_product->attrs['Цвет']), 'cvet', true);

По этому примеру я сделал импорт нескольких атрибутов

PHP

PHP:
$imported_product->attrs['Размер ш*в*г (мм)'] = str_replace('ё', 'е', $imported_product->attrs['Размер ш*в*г (мм)']);

        $new_attrs[] = $this->getAttributeWithTerm(my_mb_ucfirst($imported_product->attrs['Размер ш*в*г (мм)']), 'razmer-sh-v-g-mm', true);

Код работает, но если у конкретного товара этот параметр отсутствует в xml, то товар отмечается как скрытый и пропадает с сайта.
Помогите сделать, чтобы при отсутствии атрибута или его значения просто пропускался импорт данного атрибута в товар.
 
Сверху Снизу