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


Catalogfill генерация заголовка при импорте Название + артикул

  • Для нового проекта требуется импорт большого количества таблиц. Для этой цели как обычно буду использовать catalogfill.

    Но есть одна проблемка. Таблица содержит разные параметры для одного товара, необходимо создание документов по принципу Название + артикул. Например так - Товар (12345)

    Не могу понять как можно задать в файле конфигурации добавку tv к pagetitle. Или такое нельзя реализовать?

    То есть мне надо использовать tv articul из второй колонки 2 раза, сначала для добавления к значению pagetitle, а потом для вывода на карточке товара значения Артикул.

     array('pagetitle',array('pagetitle','content')),
       
        array('articul',array(6,'tv')),```
  • Не могу редактировать, поэтому пишу вторым сообщением.

    Что бы было понятно. Товар это сверло по металлу, название одно и тоже, но разные артикулы для разных диаметров. Мне нужно все это разбить на отдельные товары, у которых должны отличаться названия... Для этой цели хочу добавлять к названию при импорте значение второй колонки, в данном случае это артикул товара.

  • //функция для фильтрации значений при ИМПОРТЕ
    function filter_import($value_arr){
        $output_arr = $value_arr;
        
        // Добавляем артикул (TV ID = 6) к названию товара
        if(isset($output_arr['content']['pagetitle']) && isset($output_arr['tv'][6])) {
            $output_arr['content']['pagetitle'] .= '-' . $output_arr['tv'][6];
        }
            
        return $output_arr;
    }
    
  • Да, все работает. Спасибо.

    Осталось только доработать alias, установлена авто генерация псевдонимов, но почему то не добавляются цифры (артикул) из названия документа. Получаются дубли и не открываются документы.

  • Осталось только доработать alias, установлена авто генерация псевдонимов, но почему то не добавляются цифры (артикул) из названия документа. Получаются дубли и не открываются документы.

    Генерация псевдонима происходит до вызова функуции filter_import(), поэтому нужно менять псевдоним в этой функции.

    //функция для фильтрации значений при ИМПОРТЕ
    function filter_import($value_arr){
        $output_arr = $value_arr;
        
        // Добавляем артикул (TV ID = 6) к названию товара
        if(isset($output_arr['content']['pagetitle']) && isset($output_arr['tv'][6])) {
            $output_arr['content']['pagetitle'] .= '-' . $output_arr['tv'][6];
            $output_arr['content']['alias'] .= '-' . $output_arr['tv'][6];
        }
            
        return $output_arr;
    }
    
 

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

  • Так же Вы забыли указать, что это какая-то древняя версия Шопкипера для MODX Evo, которая не поддерживается автором. Думаю, лучше Вам спросить на каком-то ресурсе, который ориентирован на Evolution.

    Читать далее
  • С

    Да забыл сказать что содержимое корзины находится в выпадающем окне.
    Так же есть проблема в том что подобное меню типа 'helper' при удалении или очистке корзины появляется сзади выпадающего меню корзины. Т.е. его не видно пока не убрать курсор с корзины (после чего она закроется). Как сделать так чтобы данный 'helper' распологался поверх всех.

    Читать далее
  • С

    Доброго дня всем! Вопрос такой: как сделать так чтобы в корзине при изменении количества товара менялась сумма товара?
    Сейчас происходит следущее: количество в корзине можно изменять, но стоимость не пересчитывается, например мы изменили количество с 1 на 2, сумма осталась прежней. Пересчитывается только в том случае если нажать в поле input, затем появляется отдельное окошко типа flytoCart='helper' с изменением количества и только после нажатия "ОК" в этом окошке происходит изменение суммы. Как убрать это всплывающее окно и сделать так чтобы сумма изменялась при нажатии стрелок?

    [!Shopkeeper? &priceTV=`price` &orderFormPage=`17` &gotoid=`33253` &flyToCart=`nofly` &counterField=`1` &linkAllow=`0` &style=`0` &cartTpl=`cartRowNEW` &noCounter=`0` &noLoader=`0` &noConflict=`1` &noJavaScript=`0` &noJQuery=`1` !]

    Чанк с шаблоном корзины

    <div class="dropdown-product-item"> <div class="toolbar-dropdown"> <div id="shopCart" class="shop-cart"> <div id="cartEmpty" style="text-align:center;">Пусто</div> [+plugin+] </div> <!--tpl_separator--> <div class="dropdown-product-item shop-cart" id="shopCart"> <div id="cartInner" class="full"> <form action="[+this_page_url+]#shopCart" method="post"> <fieldset> <div style="text-align:right; font-size:16px; color:#000;"> <a href="[+empty_url+]" id="butEmptyCart">Очистить</a> </div> <table width="100%"> <tbody> [+inner+] </tbody> </table> <div class="toolbar-dropdown-group"> <div class="column"><span class="text-lg">Сумма:</span></div> <div class="column text-right"><span class="text-lg text-medium"><b>[+price_total+]</b> [+currency+]</span></div> </div> <noscript> <fieldset><input type="submit" name="shk_recount" value="Пересчитать" /></fieldset> </noscript> <div class="column"><a class="btn btn-sm btn-block btn-success" href="[+order_page_url+]" id="butOrder" class="cart-order12"">Заказать</a></div> </fieldset> </form> </div> [[+plugin+]] </div> <!--tpl_separator--> <div id="shopCart" class="shop-cart"> <div id="cartInner" class="full"> <div style="text-align:right;font-size:16px; color:#000;" > <a href="[+empty_url+]" id="butEmptyCart">Очистить корзину</a> </div> <div class="shop-cart-body">Выбрано: <b>[+total_items+]</b> [+plural+]</div> <div style="text-align:right;font-size:16px; color:#000;" >Общая сумма: <b>[+price_total+]</b> [+currency+] </div> <div class="cart-order12"> <a href="[+order_page_url+]" id="butOrder">Оформить заказ</a> </div> </div> [[+plugin+]] </div> </div>

    Читать далее
  • А

    Спасибо за Catalogfill !
    Покопался с настройками конфигурационного файла, теперь прекрасно работает!
    Удачи вам!

    Читать далее