Views: 4291
Last Modified: 19.05.2022

Terminology overview

Bitrix Framework is a comprehensive platform. If you're not quite sure of any term you encounter, you can easily find a definition and explanation in this Glossary.


TerminologyDescription
Control Panel, Admin Section or Admin AreaPart of the system providing user interface to manage the system modules, files and folders, content, users and other entities. Unlike non-admin pages, the Control Panel pages include the administrative prolog and epilog (see below). Also, the Control Panel pages:
  • are not part of any site managed by the system;
  • are provided by a specific module;
  • conform to the Control Panel user interface guidelines;
  • display their content using the selected UI language;
  • are always checked for permissions specified in the settings of their respective module.
Public Area or SectionPart of the system available and/or visible to the visitors. Pages designated as belonging to the public area always include the prolog and epilog code provided by the site template. Also, the public pages:
  • always belong to a specific site;
  • have the UI of the applied site template;
  • display content using the language currently selected for their site.
Edit Mode РA special mode in which a user with sufficient permissions can make changes to the content and settings of a page. In edit mode, the page shows additional cues to highlight components, include areas, editable content etc. Also, each of these elements shows buttons to edit and/or configure their respective properties and/or content.
Site, websiteAs a system entity, a site includes:
  • a special account, or record in the database - This record is created by a user (administrator) in Control Panel using the Sites menu:
    • ID - a string of characters uniquely identifying the site;
    • domain name - a site can have multiple domain names assigned to it;
    • site folder - a physical folder in the file system containing the website files;
    • site language;
    • date and time format;
    • URL - a fully qualified address to access the site over the Internet. Includes a protocol and the domain name (for example, http://www.site.com);
    • DocumentRoot - in a multisite configuration existing on different domains, this parameter specifies the site root path in the server file system;
    • template activation conditions. Each site can have one or more templates to show the site content. If there are multiple templates, these conditions specify when a specific template should be applied;
  • Public area, section - pages stored in the site folder;
  • Settings - each of the system modules can have a number of site-specific parameters. For example, Information block module assigns an iblock to a specific site. The Helpdesk module can have site-specific statuses and categories.
Site templateYou can think of a site template as an implementation of the site design. A site can be rendered using one or more site templates (but only one template at a time). Physically, a site template is a number of files in the folder /bitrix/templates/template_ID/, where template_ID - is the value of the ID field on the site template edit page. This folder has the following subfolders:
  • /components/ - contains components used by the system modules;
  • /lang/ - localization files that can be used by the template as well as the components;
  • /images/ - contains image files required by the template;
  • /page_templates/ - contains page templates and a description in the file .content.php;
  • /include_areas/ - contains files rendered as include areas on the pages;
  • and files:
  • header.php - template prolog (header, see below);
  • footer.php - template epilog (footer, see below);
  • styles.css - specifies CSS styles for use on the site pages;
  • template_styles.css - contains CSS styles for use by the template itself;
  • .menu type.menu_template.php - specifies the code to render the menus;
  • chain_template.php - the code to render the navigation breadcrumbs;
  • any other auxiliary files and folders.
Site sectionA site section is represented by a directory on the server file system. Since a Bitrix Framework website follows the file system structure, each site page is actually a file, and a site section is a file system directory.
ComponentA component is a logically independent piece of code physically stored in a file. Each component is recognized as part of a module it belongs to. A component can have input parameters, perform actions and show the result as it was designed to do. The use of components is the preferred way to display information in Control Panel as well as the public area. In the code, a component is included by using the IncludeComponent function. The current version of the component framework is 2.0. Legacy 1.0 components are not recommended for use; however, you still may encounter them on outdated systems.
Component pathDeprecated. This value is the path to the main file of a 1.0 component and used by the CMain::IncludeFile method as the first parameter.
Include area A dedicated area on a site page that can be edited independently from the other content. Include areas are implemented by using a dedicated component.
BreadcrumbsPart of the page design that provides site navigation facilities. Breadcrumbs are printed by the visual part of the page prolog and include titles of the site sections linked to those sections. While site section titles are generated automatically, you can add custom items to the breadcrumbs.
Index page (file)A file that the server will send back to a browser if a requested URL does not include a file name. The order in which an index page is looked up depends on the server. For example:
  • Apache - defined in the httpd.conf, file under parameter DirectoryIndex;
  • IIS - defined in the site properties on the tab Documents > Enable default content page;
This value is unavailable from a PHP script directly. To get the index page, use the GetDirIndex function.
UserA database record containing information about a registered user. Required fields include:
  • login;
  • password;
  • email.
A number of additional fields are available to store personal and job related information, as well as administrator’s remarks.

Login and password are required to log in to the system. A user is always a member of a certain user group and has the permissions assigned to that user group.

User groupA logical collection of users with certain permissions to access and manage system resources. For example, members of a Moderators user group have permission to read and edit forum posts. You can manage user groups in Control Panel on the page Settings > Users > User Groups).
Email eventsAn email message of a previously defined type sent using an assigned email template. An email event is responsible for providing values for required fields of the email event type. These fields and the email message text are defined by the email template.
Email events are created using the CEvent event class.
Email templateDefines the email message text and the placeholder fields specified in the email event type.
Email templates can be accessed on the Email templates page (Settings > System Settings > Email Events > Email Templates).
Use the CEventMessage class to create, edit and delete the email templates.
Email event typeDefines special fields, or value placeholders, for use in an email template. Whenever an email event is created, these placeholders are replaced with appropriate values.
Email event types can be accessed on the Email event types page (Settings > System Settings > Email Events > Email Event Types).
Use the CEventType class to create, edit and delete the email event types.
Relative pathA partial path from the directory specified in the DocumentRoot parameter of the web server. Example:/ru/about/index.php
Full pathA fully qualified path including protocol, domain name, port (usually omitted) and a page path relative to the web site root. Example: http://www.bitrixsoft.com/en/about/index.php
Absolute pathAn absolute path includes the value of the DocumentRoot and a subsequent relative path.
DocumentRootA path to the website root in the server file system. This path is specified on the server side:
  • Apache - DocumentRoot parameter in the httpd.conf file;
  • IIS - on the Home Directory > Local Path.
Update systemThe update system, or more specifically, the SiteUpdate technology:
  • downloads and installs system updates;
  • downloads and installs new modules and updates for existing modules;
  • downloads new localization files and new languages;
  • performs licensing functions.
Only the system kernel folders are modified while performing the update: /bitrix/modules/, /bitrix/tools/, /bitrix/admin/ and /bitrix/components/bitrix/. No changes are ever made to the public area.

The update system performs the following steps when checking for updates:

  • the remote server requests the product key;
  • if the key check was successful, the update system checks if there are any updates available;
  • creates a summary of updates and prompts a user to select the updates they want to install;
  • downloads and installs the selected updates.
LanguageTechnically, a language is a database record that can be modified on the Interface languages page in Control Panel. Each of the languages has the following fields:
  • ID;
  • Name;
  • Date and time format;
  • Encoding;
  • other fields.
The language selected by a user defines which of the localization files are used to show pages both in Control Panel and the public area.
Also, in Control Panel the language defines date and time format, and the page charset and encoding. In the public area, however, these parameters depend on the site settings.
Language fileA PHP file containing translated UI messages. Each of the messages is an entry in $MESS array whose keys are the message ID’s and the values are the translated messages. Each language is represented by a number of language files stored in /lang/ folders.
Language files are mainly used in Control Panel and components.
Use the Localization module to edit, add or delete language files.
Multilingual user interfaceMultilingual user interface is implemented using language files containing messages translated into various languages. These messages are used by the system to show the Control Panel pages, error messages, visual components, include areas in the templates and other UI elements. The system includes appropriate language files according to the selected UI language. Users can select the desired language at the bottom of every Control Panel page.
LocalizationLocalization goes beyond simple translation of system messages. It implies the adaptation of the entire spectrum of information the system uses or displays to a specific region or country: character encoding, date and time format, currency format, number format etc.
Meta tagA meta tag is an HTML element providing information about a web page: encoding, keywords, author, description and many more. Meta tags are largely used by search engines and web browsers internally. They do not display any information per se. Meta tag is specified inside the <head> tag.
Domain nameAn entry in the DNS table (domain name service), containing the website name. The main purpose of the DSN table is associate a human-readable domain name with an assigned IP address. Example of a valid domain name: bitrix24.com
IP addressA set of four numbers (TCP/IP v.4) uniquely identifying a computer on the network. Example: 198.63.210.79.
HostIn terms of the functionality of the Kernel module, a host is a domain name (or an IP address) the system can use to communicate with a website.
SessionIn Bitrix Framework, a session implies a PHP session. A session is opened whenever a visitor requests a web page and closed when a browser window is closed. Also, a new session is opened when a user logs in, and closed when they log out. A "site visit" is synonymous to session.
Unix timeNumber of seconds elapsed since January 1st 1970 minus leap seconds. Currently, Unix time representation ends on January 19th 2038.
Unix system permissionOn any Unix system there are three permissions assigned to a file and folder: read, write and execute. These permissions exist as three triads: the first triad determines the file owner permissions, the second – the user group permission, and the third triad specifies permissions for other users: There are two notations when it comes to permission representation: symbolic and numeric. Numeric notation:
  • 4 - read;
  • 2 - write;
  • 1 - execute.

The sum of these numbers is the actual set of permissions in each triad. For example, 6 is read and write, 7 is full access, 5 is read and execute.

Therefore, a complete Unix permission consisting of the three triads in numeric notation may look, for example, like this: 764. Here, 7 means the file owner has full permission (read, write and execute). 6 means the members of a user group whose member the owner is have read and write permission. Finally, all other users have read permission (4).

PHP permissions are always specified as octal numbers which means they must have a 0 (zero) prefix. For the previous example, the correct PHP permission is 0764.

Prolog

In general, a prolog refers to the topmost part of a web page.

For public area pages, the prolog is unique to a site template and resides in the file /bitrix/templates/site_template_ID/header.php.

For Control Panel pages, the prolog is stored in the file /bitrix/modules/main/interface/prolog_main_admin.php.

The prolog can have service and visual portions. The service part defines the required classes (via the include expression), creates a database connection and instances of $USER, $APPLICATION, etc. The visual part emits code a visitor sees as the page header.

If your template has everything in a single file, use the call

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

If your template splits the service (prolog_before.php) и визуальную (prolog_after.php) and visual:

require($_SERVER["DOCUMENT_ROOT"].
"/bitrix/modules/main/include/prolog_before.php");
...
require($_SERVER["DOCUMENT_ROOT"].
"/bitrix/modules/main/include/prolog_after.php");
Epilog

An epilog refers to the bottom part of a web page.

For public area pages, the epilog is unique to a site template and resides in the file /bitrix/templates/site_template_ID/footer.php.

For Control Panel pages, the epilog is stored in the file /bitrix/modules/main/interface/epilog_main_admin.php.

The epilog can have service and visual portions. The service part can perform a number of background actions: send emails, handle OnAfterEpilog events etc. The visual part emits code a visitor sees as the page footer:

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

If your template splits the service (epilog_before.php) and visual (epilog_after.php) parts, use two calls:

require($_SERVER["DOCUMENT_ROOT"].
"/bitrix/modules/main/include/epilog_before.php");
...
require($_SERVER["DOCUMENT_ROOT"].
"/bitrix/modules/main/include/epilog_after.php");

Note: while with the prolog the file *_before.php is the service part, with the epilog *_before.php represents the visual part. This difference exists because the prolog comes before the page body, while the epilog comes last.

Page bodyA page body is part of the web page between the prolog and epilog. The body is not part of the site template; the latter has no knowledge of the body content whatsoever.
Page templateA page template is a file in one of these folders:
  • /bitrix/templates/site_template_ID/page_templates/
  • /bitrix/templates/.default/page_templates/
This file represents a template for every new page a user creates using the Site Explorer module's tools. Use the .content.php file in either of the aforementioned folders to define sort order for the page templates.
SubmitAn action of sending the data from an HTML form to a web server.
HTML safe textThis term refers to text in which the following replacements have been made:
BeforeAfter
<&lt;
>&gt;
"&quot;
&&amp;

As you can see, "safe" here means the text will never be interpreted by the browser as HTML code.
Bind variablesA bind variable is in essence a substitution used in place of literals in an SQL query. The use of bind variables eliminates numerous hard parsing attempts on the same SQL query, which leads to a dramatic increase in performance..
DumpIn the context of database, a dump is the result or process of exporting the database contents and/or structure to a file for further import at the same or another location. Each database engine has its own tools allowing an administrator to create database dumps. On MySQL, the mysqldump tool exports database to a text file containing conventional SQL queries. On Oracle systems, the exp utility exports database to a proprietary format.
With PHP and JS variables, a dump implies showing the value and/or structure of a variable in human readable form.
cronOn Unix operating systems the cron utility is a job scheduler. Users or other software can use cron to schedule scripts to run at a fixed time or periodically.
BufferingWhen buffering is active, the PHP script output is stored in an internal buffer rather than sent to a client (usually a web browser). To initiate buffering, the script calls the ob_startfunction. The buffer contents can be output using a call to ob_end_flush, Buffering allows for flexible control of the data the script is sending to the client. Deferred functions are built around this technology.
Persistent connectionObviously, persistent connections take less time to establish simply because the connection already exists. However, there is a limit to the maximum number of persistent connections. In practice a situation is possible where a visitor may find the site unresponsive until a connection is available.
Accept-LanguagePreferred languages selected by a user in the browser. For MS Internet Explorer Tools > Internet options > General > Languages. For Mozilla Firefox: Menu > Options > General > Language > Choose.
Customization (component or template related)Changing the logic of a component or component template to fit the required model.
API (SDK)A number of functions, classes and class methods provided by the system modules to fetch, display, manipulate and save data in the public area. For more information, please refer to the API documentation.
System instanceA copy of Bitrix On-premise, including source code and a database instance.
Bitrix24 account or instanceA single copy of the files stored in /bitrix/modules/, and a database instance. Unlike system instance, the portal also includes one or more websites.

0


Courses developed by Bitrix24