Последние темы


CatalogFill - формирование pagetitle из нескольких данных в колонках Excel

  • Здравствуйте!
    Возникла необходимость формировать pagetitle из нескольких данных в колонках Excel и сохранять их вместе в pagetitle чтобы одинаковые названия не перезаписывали друг друга.
    У меня в экзель файле очень много совпадающих ресурсов по названию. Поэтому при импорте, один перезаписывает другого. Поэтому возникла такая необходимость. Вот пример данных с совпадающими названиями ресурсов:
    alt text

    Вы можете подсказать, Как можно сделать такую настройку в файле чтобы в Modx Revo в pagetitle сохранились по такому шаблону: species brand pagetitle? Вот так:
    0_1543649199389_a951ae3f-1aa3-4584-9178-169760cdcbca-image.png

        array('pagetitle',array('pagetitle','content')),
        array('brand',array(35,'tv')),
        array('species',array(34,'tv')),
    

    Спасибо!

  • Поэтому при импорте, один перезаписывает другого.

    Для проверки существования товара нужно какое-то уникальное значение, например, артикул или идентификатор. Если у вас такого нет, то можно делать очистку категорий перед импортом. Ещё будет проблема с псевдонимами (alias), т.к. псевдоним создается до вызова функции filter_import(). Значит нужно формировать псевдоним внутри этой функции.

    Пример создания заголовка из нескольких полей:

    
    //функция для фильтрации значений при ИМПОРТЕ
    function filter_import($value_arr){
        $output_arr = $value_arr;
    
        $output_arr['content']['pagetitle'] = $output_arr['tv'][34] . ' '
        . $output_arr['tv'][35]  . ' - '
        . $output_arr['content']['pagetitle'];
    
        return $output_arr;
    }
    
  • @Andchir Спасибо большое! Протестировала. Все работает корректно.

 

Последние комментарии

  • @Andchir Спасибо огромное... Сделал как Вы сказали всё получилось... Рабаотает :))) +100500 Вам к карме)))

    Читать далее
  • @Andchir Спасибо попробую...☺

    Читать далее
  • Он реагирует на событие изменения способа доставки, а у меня цена формируется при изменении города...

    Вы может сделать так: Выбираете город, ставите сессию свою внутреннюю, не связанную с Шопкипером. Потом вызываете JS-функцию:

    SHK.selectDelivery('Доставка транспортной компанией');

    которая сделает запрос, где вызовется плагин. В этом плагине вы можете прочитать вашу сессию или куку, которую установили при выборе города. Далее достаете цену и возвращаете значение плагина. В коде Шопкипера ничего менять не нужно.

    Читать далее
  • @Andchir Да про плагин я знаю, но к сожалению он мне не подходит... Он реагирует на событие изменения способа доставки, а у меня цена формируется при изменении города... В этом то и проблема в принципе... В любом случае спасибо большое за ответы... Буду дальше ковыряться...

    Читать далее