Документация для разработчиков

Список терминов



ТерминОписание
ПорталОдин набор файлов, хранящихся в каталоге /bitrix/modules/ и одна копия базы. Портал включает в себя один или более сайтов. Синонимом данного термина может служить: "экземпляр продукта", "одна инсталляция системы", "одна копия системы".
СайтСовокупность таких понятий как:
  • учетная запись в базе данных - создаётся в административном меню "Сайты", включает в себя следующие основные параметры:
    • идентификатор - набор символов, идентифицирующий сайт
    • доменное имя - одно или более доменное имя сайта
    • папка сайта - путь к каталогу, в котором будет храниться публичная часть сайта
    • язык сайта
    • формат даты
    • формат времени
    • URL - протокол и доменное имя по умолчанию (например, "http://www.site.ru")
    • DocumentRoot - если многосайтовость организована по способу 2, то в данном параметре должен храниться путь в файловой системе сервера к корню сайта
    • условия подключения шаблонов - каждый сайт может иметь один или более шаблонов для отображения скриптов своей публичной части, каждый такой шаблон может быть подключен по тому или иному условию
  • публичная часть - совокупность скриптов (страниц), лежащих в "папке сайта" и принадлежащих этому сайту
  • настройки - каждый модуль может иметь ряд настроек, связанных с сайтом, например, у модуля "Информационные блоки" эти настройки представляют из себя привязку информационного блока к тому или иному сайту, у модуля "Техподдержка" - привязку статуса, категории и т.п. к сайту.
Шаблон сайтаСинонимом можно считать - "дизайн сайта", "скин сайта". Для показа одного сайта можно использовать несколько различных шаблонов. Строго говоря, в шаблон сайта входят:
  • учетная запись в базе данных - создаётся в административном меню "Шаблоны сайта"
  • набор файлов в каталоге /bitrix/templates/ID_шаблона/, где ID_шаблона - поле "ID" в форме редактирования шаблона сайта, ниже представлена структура данного каталога:
    • /ID_модуля/ - каталог с компонентами 1.0, принадлежащими тому или иному модулю
    • /lang/ - языковые файлы, принадлежащие как данному шаблону в целом, так и отдельным компонентам
    • /images/ - каталог с изображениями данного шаблона
    • /page_templates/ - каталог с шаблонами страниц и их описанием, хранящимся в файле .content.php
    • /include_areas/ - каталог с файлами - содержимым включаемых областей;
    • header.php - пролог данного шаблона
    • footer.php - эпилог данного шаблона
    • styles.css - CSS стили, используемые на страницах сайта, когда используется данный шаблон
    • template_styles.css - CSS стили, используемые в самом шаблоне
    • .тип меню.menu_template.php - шаблон вывода меню соответствующего типа, если это версия 5.х
    • chain_template.php - шаблон по умолчанию для вывода навигационной цепочки (версия 5.х)
    • а также ряд других вспомогательных произвольных файлов, входящих в данный шаблон
Раздел сайтаЭто не что иное, как каталог в файловой системе сервера. В "1С-Битрикс: Управление сайтом" структура сайта - это файловая структура сервера, поэтому страницы сайта - это файлы, а разделы сайта - соответственно, каталоги.
КомпонентЯвляется частью того или иного модуля, представляет из себя логически завершенный код, хранящийся в одном файле, принимающий ряд параметров, выполняющий ряд действий и выводящий какой-либо результат (например, в виде HTML кода). Использование компонентов является наиболее предпочтительным способом организации вывода информации как в публичной, так и в административной частях. В понятие "компонент" входят следующие элементы:
  • основной файл - подключается с помощью функции CMain::IncludeFile, представляет из себя скрипт на языке PHP, реализующий логику компонента
  • языковые файлы - используются в компоненте для представления его результата на различных языках
  • описание - это PHP код, используемый HTML редактором для визуального управления компонентом и его параметрами
Компонент 2.0Компоненты являются блоками, с помощью которых строится публичная часть сайта.
Основные особенности компонентов версии 2.0:
  • В компонентах 2.0 могут быть разделены логика и представление. Для одной логики может быть несколько представлений, в том числе зависящих от шаблона текущего сайта.
    Логика - это сам компонент, представление - это шаблон вывода компонента.
  • Компоненты централизованно хранятся в одной папке. Это обеспечивает большую целостность и понятность структуры сайта. Папка доступна для обращений, а значит, компонент и его шаблоны могут легко подключать свои дополнительные ресурсы.
  • Компонент хранит все, что ему нужно для работы, в своей папке. Поэтому компоненты можно легко переносить между проектами. Компонент неделим.
  • Компоненты делятся на простые и комплексные. Простые служат для создания различных областей на одной странице (список новостей, топ элементов каталога, случайное фото и т.д.). А комплексные используются для создания полнофункциональных разделов сайта (полный каталог товаров, новостной раздел, форум и т.д.).
Путь к компонентуИспользуется в функции CMain::IncludeFile в качестве первого параметра и представляет из себя путь к основному файлу компонента относительно одного из следующих каталогов (в порядке убывания приоритета):
  • /bitrix/templates/ID шаблона сайта/
  • /bitrix/templates/.default/
  • /bitrix/modules/ID модуля/install/templates/
где:

ID шаблона сайта - идентификатор текущего шаблона сайта,
ID модуля - идентификатор модуля, которому принадлежит компонент.
Включаемые областиЭто произвольный текст (HTML код), являющийся частью содержимого страницы. С данным термином связана закладка "Редактировать сайт" на панели управления, при нажатии на которую все включаемые области обрамляются рамкой с управляющими иконками в правом верхнем углу этой рамки.
ЯзыкЭто учетная запись в базе данных, доступная для редактирования в административном меню "Языки" со следующими полями:
  • Идентификатор
  • Название
  • Формат даты
  • Формат времени
  • Кодировка
Как в публичной, так и административной частях, язык в первую очередь используется в работе с языковыми файлами.
В административной части язык определяет формат времени, даты, кодировку страниц (в публичной - данные параметры определяются настройками сайта).
Языковой файлПредставляет из себя PHP скрипт, хранящий переводы языковых фраз на тот или иной язык. Данный скрипт состоит из массива $MESS, ключи которого - идентификаторы языковых фраз, а значения - переводы на соответствующий язык. Для каждого языка существует свой набор языковых файлов, хранящихся, как правило, в каталогах /lang/.
Языковые файлы, как правило, используются в административных скриптах модулей и в компонентах.
Для работы с языковыми файлами предназначен модуль Перевод.
Шаблон страницыЭто файл, хранящийся в одном из каталогов:
  • /bitrix/templates/ID шаблона сайта/page_templates/

  • /bitrix/templates/.default/page_templates/
Данный файл представляет из себя "заготовку" публичной страницы. Как правило, используется при создании новой страницы в модуле Управление структурой (например, в HTML редакторе). Для задания порядка сортировки шаблонов страниц используется файл .content.php, находящийся в одном из вышеуказанных каталогов.
Пролог

В общем случае под данным термином понимается верхняя левая часть страницы.

Для публичной части пролог соответствующего шаблона сайта хранится в файле /bitrix/templates/ID шаблона сайта/header.php.

Для административной части пролог хранится в файле /bitrix/modules/main/interface/prolog_admin.php.

В свою очередь, пролог может быть разделен на служебную и визуальную части. В служебной части подключаются все необходимые классы, создаётся соединение с базой, создаётся ряд служебных экземпляров объектов, таких как $USER, $APPLICATION и т.д. В визуальной части выводится верхняя левая часть страницы.

Если в публичной части необходимо подключить неразделенный пролог, то используем следующий код:

require($_SERVER["DOCUMENT_ROOT"]."/bitrix/header.php");

Если по тем или иным причинам необходимо разделить пролог на служебную (prolog_before.php) и визуальную (prolog_after.php) части, то используем следующие коды:

require($_SERVER["DOCUMENT_ROOT"].
"/bitrix/modules/main/include/prolog_before.php");
...
require($_SERVER["DOCUMENT_ROOT"].
"/bitrix/modules/main/include/prolog_after.php");
Эпилог

В общем случае под данным термином понимается нижняя правая часть страницы.

Для публичной части эпилог соответствующего шаблона сайта хранится в файле /bitrix/templates/ID шаблона сайта/footer.php.

Для административной части эпилог хранится в файле /bitrix/modules/main/interface/epilog_admin.php.

В свою очередь, эпилог может быть разделен на служебную и визуальную части. В служебной части производится ряд таких действий, как: отсылка почтовых сообщений, отработка обработчиков события OnAfterEpilog и др. В визуальной части выводится нижняя правая часть страницы.

Если в публичной части необходимо подключить неразделенный эпилог, то используем следующий код:

require($_SERVER["DOCUMENT_ROOT"]."/bitrix/footer.php");

Если по тем или иным причинам необходимо разделить эпилог на визуальную (epilog_before.php) и служебную (epilog_after.php) части, то используем следующие коды:

require($_SERVER["DOCUMENT_ROOT"].
"/bitrix/modules/main/include/epilog_before.php");
...
require($_SERVER["DOCUMENT_ROOT"].
"/bitrix/modules/main/include/epilog_after.php");
Тело страницыТело страницы - это часть PHP/HTML кода, расположенного в скрипте между подключениями пролога и эпилога. Тело страницы не является частью шаблона сайта и представляет из себя индивидуальное содержимое публичной либо административной страницы.
Навигационная цепочкаЭто элемент дизайна, предназначенный в первую очередь для улучшения навигации по сайту. Навигационная цепочка выводится, как правило, в визуальной части пролога и состоит из заголовков разделов сайта с соответствующими ссылками на них. Помимо заголовков разделов, добавляемых автоматически, вы также можете добавлять произвольные пункты в навигационную цепочку.
Административная частьЭто множество скриптов, в которых подключен административный пролог и эпилог. Их подключение подразумевает:
  • данная страница не принадлежит ни одному сайту
  • в то же время она принадлежит какому-либо модулю
  • имеет строго определённый административный интерфейс
  • все параметры локализации данной страницы зависят от выбранного текущего языка
  • на этой странице используется дополнительная проверка прав, задаваемых в настройках соответствующего модуля
Публичная частьВ общем случае под данным термином понимается множество скриптов, у которых подключен пролог и эпилог одного из шаблонов сайта. Их подключение подразумевает:
  • данная страница принадлежит какому-либо сайту
  • имеет интерфейс текущего шаблона сайта
  • все параметры локализации данной страницы зависят от текущего сайта
Режим редактирования сайтаРежим, при котором текущая страница публичного раздела отображается в особом виде: выделены используемые компоненты, включаемые области, редактируемые области и т.д. Каждая такая область имеет набор кнопок для быстрого перехода к редактированию данного элемента страницы.
Индексная страница (файл)Это имя файла, который будет использован веб-сервером в случае, если запрашиваемый URL заканчивается на слэш и не содержит в себе имени файла. Порядок, в котором будут искаться индексные страницы для различных веб-серверов, задается по разному, например:
  • Apache - в файле httpd.conf, параметр DirectoryIndex
  • IIS - в свойствах сайта, закладка "Documents" -> "Enable default content page"
К сожалению, в PHP значение данного параметра недоступно, поэтому для определения индексной страницы в коде необходимо пользоваться функцией GetDirIndex.
Бюджет пользователяСинонимами данного термина можно считать "регистрация пользователя", "логин пользователя". Это запись в базе данных, содержащая параметры зарегистрированного пользователя с такими обязательными полями, как:
  • логин
  • пароль
  • E-Mail
А также ряд дополнительных полей, содержащих личную информацию о пользователе, информацию по его работе, административные заметки.
Мета-тегМета-тег - это один из элементов HTML, позволяющий задать информацию о странице. Например, указать кодировку страницы, ее ключевые слова, автора, задать краткое описание страницы. Как правило, содержимое мета-тегов используется в служебных целях, например, роботами поисковых систем, индексирующих сайт. Мета-тег задается внутри тега <head>.
ЛокализацияПодразумевает представление информации в переводе на определенный язык, в соответствующей кодировке данного языка и с использованием соответствующих форматов представления данных, характерных для этого языка (например, дата, время, денежные единицы, числа и т.д.).
ХостВ применении к функциям главного модуля под данным термином понимается доменное имя или IP адрес, посредством которого можно обратиться к тому или иному сайту.
Доменное имя (домен)Строго говоря, это одно из полей DNS-таблицы (domain name service), содержащее в себе строго структурированное имя интернет-сайта, заданное по определённым правилам. Основная задача DNS-таблицы - это ассоциация доменных имен с IP адресами сайтов.

Пример доменного имени: www.bitrixsoft.ru
IP адресЭто "имя" компьютера в сети, заданное по правилам протоколов TCP/IP. IP адрес состоит из четырех октетов, часть из которых идентифицирует подсеть, в которой находится компьютер, а часть - непосредственно этот компьютер в рамках соответствующей подсети.

Пример IP адреса: 198.63.210.79 (этому адресу в DNS-таблице соответствует доменное имя - www.bitrixsoft.ru)
Accept-LanguageНабор языков, установленных в браузере посетителя сайта.
Их можно выставить в меню браузера:
  • для MS Internet Explorer - "Tools" -> "Internet Options" -> "General" -> "Languages";
  • для Mozilla Firefox - "Инструменты" -> "Настройки" -> "Основное" -> "Языки".
Время в Unix-форматеКоличество секунд, прошедшее с 1 января 1970 года, с точностью до микросекунды. На сегодняшний день время в Unix-формате может фиксироваться только до 2038 года.
Права в Unix системахВ Unix-подобных операционных системах (являющихся доминирующими на сегодняшний день для интернет-серверов) поддерживаются три вида прав - чтение, запись и выполнение, которые присваиваются каждому файлу или директории. Права эти повторяются три раза: для владельца файла, для группы пользователей, к которой владелец принадлежит, и для всех остальных пользователей. Как правило, права указываются в числовом формате:
  • 4 - чтение
  • 2 - запись
  • 1 - выполнение
Сумма этих чисел дает окончательный набор прав, например, 6 - это чтение и запись, но без выполнения, 7 - все права, 5 - чтение и выполнение.
Таким образом, например, право 764 будет означать: 7 - все права для владельца файла, 6 - чтение и запись для группы пользователей, к которой принадлежит владелец файла и 4 - чтение для всех остальных пользователей.
В PHP все права задаются в виде восьмеричных чисел, поэтому их надо задавать с обязательным указанием префикса - 0.

Пример: 0755.
Путь относительно корняПуть к файлу, начинающийся от каталога, указанного в параметре DocumentRoot в настройках веб-сервера, заданный по правилам формирования URL-адресов.

Пример: /ru/about/index.php
Полный путьВключает в себя протокол, домен, порт и путь относительно корня к странице (каталогу).

Пример: http://www.bitrixsoft.ru/ru/about/index.php
Абсолютный путьАбсолютный путь к файлу включает в себя DocumentRoot и путь относительно корня.
DocumentRootПуть к корню сайта в файловой системе сервера. Задается в настройках веб-сервера, например:
  • для Apache - в файле httpd.conf, параметр DocumentRoot;
  • для IIS - в свойствах сайта, закладка "Home Directory" -> "Local Path".
СабмитОтправка данных HTML-формы на сервер.
СессияПод данным термином понимается сессия PHP. Сессия может открываться в момент захода на сайт и закрывается при закрытии окна браузера. Также новая сессия открывается при авторизации пользователя, если закончить сеанс авторизации (разлогиниться) - сессия закрывается. Синонимом термина Сессия можно считать один "заход на сайт".
HTML-безопасный видКак правило, данный термин применяют к тексту, в котором произведены следующие замены:
ИсходноеРезультат
<&lt;
>&gt;
"&quot;
&&amp;

Подобные замены позволяют выводить текст внутри HTML-кода, не опасаясь, что он будет интерпретирован браузером как часть этого HTML-кода.
Связывание переменныхВ применении к SQL-запросам для Oracle версии, под данным термином подразумевается связывание имен переменных (либо полей таблицы) с их значениями. Как правило, подобная технология используется для полей типа BLOB, CLOB, LONG и т.п., предназначенных для хранения больших объемов данных.
ДампВ применении к базе данных под данным термином подразумевается выгрузка содержимого и, возможно, структуры таблиц в файл в определённом формате для их возможной дальнейшей загрузки обратно в данную либо любую другую базу. Для каждой базы данных существуют свои утилиты, позволяющие сделать дамп, например, для MySQL утилита mysqldump позволяет выгрузить в формате обычных SQL-запросов, для Oracle утилита exp позволяет выгрузить в своем внутреннем формате.
В применении к переменным дамп подразумевает отображение структуры и содержимого переменной в текстовом виде.
cron (крон)В Unix-подобных операционных системах утилита cron позволяет организовать запуск скриптов по четко указанному расписанию.
БуферизацияПод термином "буферизация" в PHP понимается такой режим, при котором весь исходящий поток данных из PHP-скрипта (например, HTML-код) запоминается предварительно в памяти и не отдается в "поток", т.е. не отсылается браузеру пользователя. Буферизацию в PHP можно включить с помощью функции ob_start. В дальнейшем буферизацию можно отключить, например, с использованием функции ob_end_flush, при этом все накопленные данные будут отосланы браузеру. Буферизация позволяет произвольно манипулировать исходящим потоком данных, на этом принципе основана технология отложенных функций.
Постоянное соединение (persistent)При создании соединения с базой в памяти создаётся дескриптор данного соединения. Если соединение обычное, то после отработки скрипта этот дескриптор удаляется, если соединение "постоянное", он остается и может быть использован другими процессами при необходимости. Достоинством "постоянного" соединения является то, что, как правило, времени на него требуется меньше, но в то же время есть недостаток - количество открытых "постоянных" соединений ограничивается в настройках базы данных и при превышении этого лимита посетитель не сможет зайти на сайт, пока не освободятся новые соединения.
Почтовое событиеЭто почтовое сообщение, имеющее свой тип и отправляемое по соответствующему почтовому шаблону. Почтовое событие инициализирует поля типа почтового события конкретными значениями. Порядок расположения этих полей в письме, а также текст письма определяется почтовым шаблоном.
Для создания почтового события предназначен класс CEvent.
Почтовый шаблонОпределяет текст почтового сообщения, а также порядок расположения полей (placeholder'ов), заданных в типе почтового события.
Почтовые шаблоны доступны в административном меню "Настройки системы" -> "Почтовые шаблоны".
Для манипуляции почтовыми шаблонами предназначен класс CEventMessage.
Тип почтового событияОпределяет набор специальных полей (placeholder'ов), которые могут быть использованы в почтовом шаблоне. В момент создания почтового события эти поля будут инициализированы конкретными значениями.
Для манипуляции типами почтовых событий предназначен класс CEventType.
ЧПУЧеловекопонятные URL. Веб-адреса, удобные для восприятия человеком (а также системы и методы построения таких адресов).

При формировании каждой динамической страницы система создает адрес с соответствующим целочисленным идентификатором. (Например, /bitrix/admin/iblock_element_admin.php?IBLOCK_ID=48&type=help&lang=ru&find_section_section=4972) Это вполне понятно и естественно для разработчиков и программ, но не совсем понятно и удобно для посетителей.

Концепция ЧПУ предполагает максимально лаконичные и интуитивно понятные адреса, которые показывают естественную для человека логическую структуру данных на сервере, а не её программный интерфейс с модулями и параметрами.

Пользовательские комментарии

Мы будем рады, если разработчики добавят свои комментарии по практическому использованию методов системы.

Для этого нужно всего лишь авторизоваться на сайте

Но помните, что Пользовательские комментарии, несмотря на модерацию, не являются официальной документацией. Ответственность за их использование несет сам пользователь.

Также Пользовательские комментарии не являются местом для обсуждения функционала. По подобным вопросам обращайтесь на форумы.
© «Битрикс», 2001-2019, «1С-Битрикс», 2019
Наверх