Сохранить
Сохраняем
  • А
    Артем

    Andchir - Огромное спасибо.
    $output_arr['content']['resource_id']; - не работает
    Сделал по другому.
    Немного передел catalogfill.class.php

    добавил вот такие строчки:

    $tempArr['content']['url'] = $this->makeAlias($tempArr['category'][0][1]).'/'.$this->makeAlias($tempArr['category'][1][1]);
    $tempArr['content']['url'] = preg_replace('/-{2,}/','-',$tempArr['content']['url']); //Удаляем дублирующие дефисы
    

    А потом в фильтре формирую вот такую ссылку:

     $output_arr['content']['url'] ='/catalog/'.$output_arr['content']['url'].'/'.$output_arr['content']['articul'].'.html';
    

    написал в Поддержка Читать далее
  • А
    Артем

    Все я туплю. ссылку можно сформировать, просто добавим alias товара.
    Как теперь мне узнать id категории в конфиге?

    написал в Поддержка Читать далее
  • А
    Артем

    Эта функция выдает url из таблицы Ресурсов, а у меня таблица MIGX

    написал в Поддержка Читать далее
  • А
    Артем

    Как в моем случае будет выглядеть функция, у меня таблица migx:
    Вот мои настройки:
    //Название класса таблицы товаров в БД
    $cf_config['className'] = 'ShopContent';
    //Название пакета таблицы товаров в БД
    $cf_config['packageName'] = 'shop';
    //Название поля ID родителя
    $cf_config['parent_field'] = 'resource_id';

    @Andchir сказал catalogFill: фильтр категорий и доступ к полной ссылке:

    Как получить в фильтре значение полной ссылке.

    https://rtfm.modx.com/revolution/2.x/developing-in-modx/other-development-resources/class-reference/modx/modx.makeurl

    написал в Поддержка Читать далее
  • А
    Артем

    Покопался в коде и нашел:

    Данная строка вставляет в таблицу MIGX в поле category1 значение категории нулевого уровня

    $output_arr['content']['category1'] =  $output_arr['category'][0][1]; 
    

    а вот так вставляется значение 1 уровня, т.е. подкатегории:

     $output_arr['content']['category2'] =  $output_arr['category'][1][1];
    

    Осталось ответить на 3 вопрос:

    Как получить в фильтре значение полной ссылке.

    написал в Поддержка Читать далее
  • А
    Артем

    как в фильтре обратиться к этому массиву -> array('Категория',array(2,'category'))

    1. Как в фильтре получить доступ к столбцу таблицы migx

    2. Как получить в фильтре значение полной ссылки. Пытался в фильтре прописать так:

     $output_arr['content']['url'] = $output_arr['content']['uri'];
    

    не работает

    написал в Поддержка Читать далее
  • А
    Артем

    Сделал в таблице MIGX дополнительные поля:
    category1 - название категории верхнего уровня
    category2 - название подкатегории.
    url - полная ссылка на товар

    1. Как при импорте записать туда значения категорий 1-го и 2-го уровней.
      Пытыюсь воспользоваться фильтром в конфиге, но не пойму как прописать категории

    Для названия товара все понятно -> $output_arr['content']['pagetitle']
    А вот как для категории не пойму.

    //разбивка по столбцам при импорте и экспорте (content|tv|category)
    $cf_config['content_row'] = array(
        array('Код',array('articul','content')),
        array('Категория',array(2,'category')),//2 - ID шаблона категории
        array('Подкатегория',array(2,'category')),//2 - ID шаблона подкатегории
        array('Наименование',array('pagetitle','content')),
        array('Описание',array('content','content')),
        array('Цена',array('price','content')),
        array('Ед. имз',array('unit','content'))
      );
    

    как в фильтре обратиться к этому массиву -> array('Категория',array(2,'category'))

    1. Как в фильтре получить доступ к столбцу таблицы migx

    2. Как получить в фильтре значение полной ссылки. Пытался в фильтре прописать так:

     $output_arr['content']['url'] = $output_arr['content']['uri'];
    

    не работает

    написал в Поддержка Читать далее
  • А
    Артем

    @Andchir А вы не пробовали загрузить к себе мой файл XLS ?
    Конфиг и файл вот они:

    Конфиг
    XLS Файл

    написал в Поддержка Читать далее
  • А
    Артем

    @Andchir сказал CatalogFill дубли при загрузке более 10000 товаров:

    Тут я предположил, что у вас при настройке импорта появились проблемы с алиасами и вы без исправления этой проблемы импортировали товары. Это так?

    Алиасы у меня формируются из кода товара. Этот код 1С присваивает автоматически (дублей быть не может).

    Так выглядит товар в таблице migx после загрузки

    написал в Поддержка Читать далее
  • А
    Артем

    У меня в excel товар отсортирован по id от 000001 до 020000. А в момент присвоения id в modx как будто сортировка категорий идет по имени.

    написал в Поддержка Читать далее