Содержание:
1. Символьный код и внешний код в Битрикс
2. Работа с полем «Символьный код» в системе 1С Битрикс
3. Решение проблемы одинакового символьного кода в Битрикс
1. Символьный код и внешний код в Битрикс
В данной статье будет рассмотрено использование символьного кода Битрикс, как он расширяет возможности Битрикс и решение некоторых проблем, которые могут возникнуть у разработчика в этой области.
Наиболее часто задаваемый вопрос – о различиях внешнего кода Битрикс и символьного кода. Это абсолютно различные понятия. Внешний код Битрикс указывает соотношение с товаром, представленном на веб-сайте и в 1С, то есть в нём общим является ID (сервисная программа UNIX, которая выводит информативный материал о конкретном пользователе – USERNAME, при запуске некоей команды и отсутствии определённого имени пользователя). В свою очередь, символьный код Битрикс – это код, который отмечен в URL (Uniform Resource Locator – системная совокупность единообразных адресов интернет ресурсов или унифицированный показатель нахождения файла) адресе на ссылке на товар или продукцию.
2. Работа с полем «Символьный код» в системе 1С Битрикс
Поле под названием «Символьный код» (CODE) в Битрикс располагается в компоненте «Добавление элементов инфоблока». В большинстве сайтов поле «Символьный код» создаётся из названия конкретного элемента. Но в случае, когда происходит эксплуатация элемента «Добавление элементов инфоблока» (iblock.element.add), такое использование становится недопустимым, так как такой реализации не существует.
В этом случае для решения данного вопроса нужно индивидуализировать такие компоненты:
· «Добавление элементов инфоблока» (iblock.element.add) – этот компонент даёт возможность добавить необходимые элементы в блок с информацией;
· «Форма добавления/редактирования» (iblock.element.add.form) – это конкретная форма, в которой происходит правка вышеупомянутых элементов, так как в будущем они могут терпеть изменения;
· «Список своих элементов» (iblock.element.add.list) – компонент, благодаря которому создаётся перечень элементов структуры.
Далее потребуется скопировать эти компоненты в самоличное место для имён. Как вариант, это может быть папка под названием «/bitrix/components/demo/». Далее предстоит следующий ряд действий в системе Битрикс 24:
1. Сменить имя папки из «/bitrix/components/demo/iblock.element.add/templates/.default/bitrix/» в «/bitrix/components/demo/iblock.element.add/templates/.default/demo/», это делается для создания конкретно предварительной версии по умолчанию;
2. Почти по аналогии в файлах /bitrix/components/demo/iblock.element.add/templates/.default/list.php и /bitrix/components/demo/iblock.element.add/templates/.default/form.php заменяем «bitrix» на «demo» (этим пунктом мы создаём собственные файлы в структурах);
3. Меняем в каждом из файлов, которые были скопированы, вида «component.php» и «template.php»:
· «CODE=» на «ID=»;
· «CODE» на «ID» (помимо факта, в котором "CODE" находится в части кода $arr["CODE"] в файлах вида .parameters.php).
Для большей продуктивности работы системы 1С Битрикс поиск и изменение слов можно исполнить посредствам самого продукта, потребуется перейти по вкладкам «Контент → Структура сайта → Файлы и папки», после чего необходимо будет зайти в каждую из папок, компонента, который был скопирован, кликнуть на кнопку «Поиск» и отметить в вкладке «Заменить» параметры, как на примере ниже в скрипте Битрикс (остальные изменения проводятся по аналогии):
Замена параметров в системе 1С Битрикс
4. Ищем в файлах, которые были скопированы «.parameters.php» код вида:
Код в скопированных файлах в системе 1С Битрикс
После него вставляем такую строку:
Строка кода для замены в системе 1С Битрикс
5. Следующим действием станет в файле «/bitrix/components/demo/iblock.element.add.form/component.php». После части кода вида:
Часть кода в файле в системе 1С Битрикс
…здесь необходимо написать такой код:
Нужный код в системе 1С Битрикс
6. Далее происходит замена в файле «/bitrix/components/demo/iblock.element.add/templates/.default/demo/iblock.element.add.form/.default/template.php» строки:
Строка кода для замены в системе 1С Битрикс
…на часть кода в Битрикс 24 в таком виде:
3. Решение проблемы одинакового символьного кода в Битрикс
Рассмотрим одну из самых частых и популярных проблем разработчиков в этой области – символьный код в Битрикс одинаковый, то есть не является уникальным. Иногда случается, что у каких-то элементов из различных разделов идентичный символьный код. По этой причине в одних разделах появляются элементы из совершенно иного раздела.
Решение данной проблемы в системе управления Битрикс:
· Изменить настройки в инфоблоке:
1. Воспользоваться шаблоном в разделе #SECTION_CODE_PATH#;
2. Далее: привязка к разделам → включить «Разрешить выбор основного раздела для привязки»;
3. Далее: символьный код → отключить «Если код задан, то проверять на уникальность» для каждого элемента и раздела.
· Поменять настройки нужного компонента:
1. Оперировать шаблоном ЧПУ, который располагается в разделе #SECTION_CODE_PATH#;
2. Воспользоваться главным разделом для отображения элемента;
3. Строго проверить раздел для детального показа нужного элемента;
4. Очистить файлы из кэша как администратор.
Специалист компании «Кодерлайн»
Айдар Фархутдинов