• Здравствуйте!
    Помогите пожалуйста разобраться с сортировкой категорий и подкатегорий. Каким образом они загружаются и сортируются на сайте?
    В 1С коды категорий уже сделали в нужном порядке – не помогло.

Viewing 4 replies - 1 through 4 (of 4 total)
  • Сортировка по-русски в магазине не работает, я делал по другому:
    1. В 1С в Номенклатура и ВидыНоменклатуры добавил поле ПорядокНаСайте.
    2. В плане обмена ОбменССайтом в макетах надо это поле прописать.
    3. В модуле обмена добавить это поле к выгрузке.
    4. В плагине добавить кусок кода по обработке этого поля
    5. Добавить сортировку товара и категорий по этому полю в магазине.
    Мест много где надо добавлять. Смотрите как переносится Номенклатура, и так же делайте с ПорядокНаСайте в 1С и в плагине.
    Но, вся эта выгрузка долго идет на сайт. Удобно, но долго.
    Поэтому я от всего этого отказался и заполняю это поле в базе магазина напрямую из 1С. Сортирую как мне надо 1С, заполняю это поле и просто обновляю в базе магазина прямым запросом поле по которому сортирую. Это значительно быстрее работает. Для обновления большого магазина требуются минуты. Первоначальное заполнение базы магазина через плагин, а управление им через прямые запросы к базе магазина.

    Thread Starter lengerik

    (@lengerik)

    @rovak
    Можете пожалуйста скинуть код сортировки, который используете?

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

    &НаСервере
    Процедура СортировкаНаСервере()
    АутентификацияСтандартная = Истина;
    ИмяПользователя = “Имя”;
    Пароль = “Пароль”;

    СтрокаПодключения = “DRIVER={MySQL ODBC 5.2 ANSI Driver};
    |SERVER=Мой_сайт.ru;
    |Language=русский;
    |STMT=SET CHARACTER SET cp1251;
    |DATABASE=BASE;
    |uid=”+ИмяПользователя+”;
    |pwd=”+Пароль+”;
    |”;

    Connection = Новый COMОбъект(“ADODB.Connection”);

    Connection.Open(СтрокаПодключения);
    Connection.DefaultDatabase = “BASE”;
    Recordset = Новый COMОбъект(“ADODB.Recordset”);

    Для Каждого Стр из Объект.НоменклатураСписок Цикл

    ID = УбратьПробелы(Стр.ID);
    menu_order = УбратьПробелы(Стр.Номенклатура.ПорядокНаСайте);

    ТекстЗапроса = “INSERT INTO db_posts (ID, menu_order) VALUES(‘”+ ID +”‘,'”+ menu_order +”‘)
    |ON DUPLICATE KEY UPDATE ID= VALUES(ID), menu_order= VALUES(menu_order)”;

    Table = Connection.Execute(ТекстЗапроса);

    КонецЦикла;
    Connection.Close();
    КонецПроцедуры

    &НаКлиенте
    Процедура Сортировка(Команда)
    СортировкаНаСервере();
    КонецПроцедуры

    Функция УбратьПробелы(ВходящееЗначение)
    Если ВходящееЗначение = “” Тогда
    Возврат ВходящееЗначение;
    КонецЕсли;
    Значение = ВходящееЗначение;
    Значение = СтрЗаменить(Значение,Символ(34),””);
    Значение = СтрЗаменить(Значение,Символ(123),””);
    Значение = СтрЗаменить(Значение,Символ(125),””);
    Значение = СокрЛП(СтрЗаменить(Значение, Символы.НПП, “”));
    Значение = СокрЛП(СтрЗаменить(Значение, ” “, “”));
    Возврат Значение;

    КонецФункции

    Друзья, у кого можно заказать настройку данного плагина под конкретный магазин? Был бы очень признателен за контакты

    [email protected] либо телеграмм @mimivmode

Viewing 4 replies - 1 through 4 (of 4 total)
  • The topic ‘Сортировка категорий и подкатегорий’ is closed to new replies.