У нас как всегда, время дали с февраля по 1 июля для перехода на новые условия работы. Люди дождались пока наступит 1 июля и только тогда стали стучать, что им что-то надо поменять в интернет-магазине, что бы соответствовать текущим требованиям законодательства. В связи с этим попытаюсь дать пояснения текущему положению вещей.
Наш опыт работы с платформой 1С-Битрикс позволяет предложить заказчику максимальный спектр услуг. Мы обладаем необходимыми компетенциями, что подтверждает партнерский статус и сертификаты и готовы выполнить проекты любой сложности. Чем сложнее – тем интереснее.
При больших количествах элементов во избежание зависания и сброса скрипта лучше запускать его в пошаговом режиме. Данный пример выполняется после прохождения обмена с 1С. Действия могут быть любыми.
Клиентом была поставлена задача: при обмене с 1С товары помеченные на удаление в 1С должны деактивироваться на сайте, тоже самое должно происходить с характеристиками (в Битриксе они становятся торговыми предложениями). Решение: стандартный (от Битрикса) класс CIBlockCMLImport (лежит здесь:Bitrix/modules/iblock/classes/general/cml2.php) выносим в свой файл задаем собственное имя и в функцию ImportElement дописываем код:
Иногда бывает нужно вывести меню не по всему инфоблоку, а только по одному из разделов. Кастомизированный компонент menu.section имеет дополнительный параметр "Корневой раздел меню (ID):" в который нужно ввести ID раздела.
Функция array_multisort первый массив (сортирующий) - фактически маска для сортировки второго (основного) массива. Задаем его элементы так, чтобы их порядок после сортировки давал нужный нам порядок основного массива. Сортирующий массив будет отсортирован SORT_ASC (по умолчанию, если не указано иного), а элементы основного массива будут отсортированы в соответствии с элементами сортирующего массива. Например