Views: 31119
Last Modified: 04.10.2024

Glossary

Each platform uses its own terminology. In order to find your way around documentation and training courses, when communicating with developers it is advisable to explain your difficulties in a language that is understandable to specialists instead of using lay terms. A glossary of system terms and several general terms extensively used in the system is provided below for your convenience.


Term Description
Program instance A copy of the product consisting of the product’s source code and only one copy of the structure and database tables included in the product and also any product’s instruction for use.
Portal One set of files stored in the directory /bitrix/modules/ and one copy of the base. The portal comprises one or more sites. The following expressions may be used as synonyms of this term: “product instance,” “one system installation,” and “one system copy.”
Site A set of the following notions:
  • Database account is created in the Sites administrative menu and includes the following main parameters:
    • Identifier – a set of symbols identifying the site;
    • Domain name – one or more domain names of the site;
    • Site folder – a path to the catalog where the public part of the site will be stored;
    • Language of the site;
    • Date and time format;
    • URL - a default protocol and domain name (for example: http://www.site.com);
    • DocumentRoot - if multi-siting is organized on different domains, this parameter must contain a path through the server file system to the site root;
    • Template connection conditions – each site may have one or more templates for reflecting scripts of its public part, each of such templates may be connected according to a certain condition;
  • Public part – is a set of scripts (pages) located in the “site folder” and belonging to this site;
  • Settings – each module may have a number of settings associated with the site; for example the settings of the Information Blocks module represent the binding of an information block to a certain site, and the settings of the Helpdesk module determine the binding of a status, category, etc. to the site.
Site template The synonyms are site design and site skin. Several different templates can be used to display one site. A site template includes the following:
  • a set of files in the directory /bitrix/templates/template_ID/, where template_ID is an ID field in the form of a site template editing. The structure of this directory is as follows:
    • /components/ - directory with components belonging to a certain module;
    • /lang/ - language files belonging both to this template in general and to separate components;
    • /images/ - a directory with images used in this template;
    • /page_templates/ - a directory with page templates and their description stored in the file .content.php;
    • /include_areas/ - a directory with content files of the areas to be included;
    • header.php - is a prologue of this template;
    • footer.php - is an epilogue of this template;
    • styles.css - CSS styles applied on the site pages when this template is used;
    • template_styles.css - CSS styles used in the template itself;
    • .menu type.menu_template.php - a template for displaying menu of a relevant type;
    • chain_template.php - a default template for display of navigational chain;
    • and also a number of other auxiliary random files included in this template.
Site section A directory in the server file system. Site structure in Bitrix Framework is a server file system, which is why the files constitute site pages and, accordingly, directories constitute site sections.
Component This is a part of a certain module. It represents a logically completed code stored in one file which accepts a number of parameters, performs a number of actions, and displaying a result (for example, in the form of HTML code). It is strongly recommended to use components for the organization of information display both in public and in administrative parts. The term component comprises the following elements:
  • master file connects using the function CMain::IncludeFile which represents a PHP script implementing the logic of component;
  • language files - are used in component to display its result in different languages;
  • description - is a PHP code used by visual editor to manage component and its parameters.
Nowadays, version 2.0 of the components is used. The use of components from 1.0 is not recommended but they are still used on the sites built on earlier versions of the system.
Update system The technology SiteUpdate permits the following:
  • Download product updates;
  • Upload new modules and updates for existing modules to extend their functionality;
  • Upload language files and install new languages;
  • Register licenses for additional sites.
The data shall be downloaded from the site of Bitrix, Inc. through the web interface of the administrative section of the product. During the update only core of the product is modified (files contained in the folders /bitrix/modules/, /bitrix/tools/, /bitrix/admin/, and /bitrix/components/bitrix/). The update does not affect the public part of the portal completely eliminating the risk of data loss.

The system is updated in several steps:

  • The update system automatically requests a license key of the product;
  • Next, a check of the available updates is performed;
  • Then, a user is offered to select updates for downloading;
  • After that, selected updates are downloaded.
All updates and new modules are compressed first and then downloaded to the owner’s site.
Component path This is used in the function CMain::IncludeFile as a first parameter and represents a path to the master file of a component in respect to one of the following directories (in order of priority):
  • /bitrix/templates/site_template_ID/;
  • /bitrix/templates/.default/;
  • /bitrix/modules/module_ID/install/templates/
Where:
Site_template_ID is an identifier of the current site template,
Module_ID - is an identifier of the module to which the component belongs.
Areas to Be Included This is a specially selected area on a site page that may be edited independently from the primary contents of the page. It is implemented using a special software component.
Language It is an account in the database that is accessible for editing in the administrative menu on the Interface Languages page with the following fields:
  • Identifier;
  • Name;
  • Date format;
  • Time format;
  • Encoding.
Both in the public and administrative parts, language is primarily used in work with language files.
In the administrative part, the language determines the time and date format and page encoding (in the public part these parameters are determined by the site settings).
Language file This is a PHP script containing translations of language phrases into a certain language. This script consists of a $MESS array with keys that are identifiers of language phrases and values that are translations into a relevant language. For each language there is a certain set of language files which, as a rule, are stored in the directories /lang/.
As a rule, language files are used in the administrative scripts of modules and in components.
The module Localization is intended for work with language files.
Page template This is a file stored in one of the directories:
  • /bitrix/templates/site_template_ID/page_templates/
  • /bitrix/templates/.default/page_templates/
This file represents a blank for a public page. As a rule, it is used for creating a new page in the Site Explorer module. For the creation of the procedure for page template sorting of the file .content.php located in one of the aforementioned directories is used.
Prologue

Generally, this term means the top left part of a page.

For the public part the prologue of the relevant site template is stored in the file /bitrix/templates/site template ID/header.php.

For the administrative part the prologue is stored in the file /bitrix/modules/main/interface/prolog_admin.php.

In its turn, the prologue may be divided into a service and a visual part. In the service part, all the necessary classes are connected, connection with the base is established, and a number of service instances of objects such as $USER, $APPLICATION, etc. are created. In the visual part, top left part of the page is displayed.

If an undivided prologue must be connected in the public part, we use the following code:

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

If due to any reasons we have to divide the prologue into a service (prolog_before.php) and a visual (prolog_after.php) part, we use the following codes:

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

Generally, this term means the bottom right part of a page.

For the public part, the epilogue of the relevant site template is stored in the file /bitrix/templates/site template ID/footer.php.

For the administrative part, the epilogue is stored in the file /bitrix/modules/main/interface/epilog_admin.php.

In its turn, the epilogue may be divided into a service and a visual part. Some actions like sending mail messages, execution of OnAfterEpilog event handlers, etc. are performed in the service part. In the visual part, the bottom right part of the page is displayed.

If an undivided epilogue must be connected in the public part, we use the following code:

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

If due to any reasons we have to divide the epilogue into a visual (epilog_before.php) and a service (epilog_after.php) part, we use the following codes:

require($_SERVER["DOCUMENT_ROOT"].
"/bitrix/modules/main/include/epilog_before.php");
...
require($_SERVER["DOCUMENT_ROOT"].
"/bitrix/modules/main/include/epilog_after.php");
Page body Page body is a part of the PHP/HTML code located in the script between the connections of the prologue and epilogue. Page body is not a part of the site template and represents the individual contents of a public or administrative page.
Navigation chain (breadcrumbs) It is a design element intended primarily for improving navigation on the site. Navigation chain is displayed in the visual part of the prologue and consist of headers of site sections with relevant links to them. In addition to automatically added section headers you can also add arbitrary points to a navigation chain.
Administrative part This is a system section containing an interface for managing system modules and structure, contents, visitors, and other components of the site. It consists of numerous scripts in which the administrative prologue and epilogue are connected. Their connection means the following:
  • This page does not belong to any site;
  • At the same time it belongs to a module;
  • It has a strictly determined administrative interface;
  • All localization parameters of this page depend on a selected current language;
  • Additional verification of rights established in the settings of a relevant module is used on this page.
Public part This is a system section available for displaying to site visitors. Generally, this term means numerous scripts in which the prologue and epilogue of one of the site templates are connected. Their connection means the following:
  • This page belongs to a site;
  • It has an interface of a current site template;
  • All localization parameters of this page depend on the current site.
Revision mode A mode when the current page of the public section is displayed in a special form: the components used, areas to be included, areas to be revised, etc. are marked. Each such area has a set of buttons to quickly switch to the editing of this page element.
Index page (file) This is a file name to be used by web server if the requested URL ends with a slash and contains no file name. There are different ways to establish the index page search order for different web servers, for example:
  • Apache - in the file httpd.conf, parameter DirectoryIndex;
  • IIS - in site properties, tab Documents > Enable default content page;
Unfortunately, the value of this parameter is unavailable in PHP. That is why the function GetDirIndex must be used to determine the index page in the code.
User An entry in the database containing parameters of a registered user with such mandatory fields as:
  • Login;
  • Password;
  • E-Mail,

and also a number of additional fields containing a user’s personal information, information about a user’s work, and administrative notes.

Registration data (login and password) indicated by the user during registration or obtained by the user automatically (e.g., after importing) will be used for authorization in the system. Following registration, the user is allocated to a specific group and receives the right to access portal resources in accordance with the rights granted to such group.

Group of users A number of portal users having certain rights to access and manage portal resources (e.g., users of the Moderators group have the right to read and edit forum messages). Groups of users are managed on the page Group of users in the administrative section (Control Panel > Settings > Manage users > User groups).
Multilanguage interface The functionality is implemented by using language files containing a translation of the phrases into the relevant languages for the following:
  • Administrative section;
  • Error messages;
  • Visual components;
  • Relevant areas in the portal template;
  • etc.
Necessary language files are connected in accordance with the current interface language. As a result, messages are displayed to the user in a language selected by the user. Switching between the languages of the administrative interface is possible using relevant buttons on the administrative panel.
Meta tag A meta tag is one of the HTML elements that permit you to set information about a page. For example, to indicate page encoding, its keywords, author, and to give a short description of the page. As a rule, the contents of meta tags are used for service purposes, for example by web crawlers indexing the site. Meta tag is determined inside the tag <head>.
Localization Means provision of information translated into a relevant language, in the appropriate encoding of this language, and using appropriate data format characteristic for such a language (e.g., date, time, monetary units, numbers, etc.).
Host This is applicable to functions of the main module, this term means a domain name or IP address that may be used to access a site.
Domain name (domain) Strictly speaking, it is one of the fields of the DNS (domain name service) table that contains a strongly structured name of the Internet site given according to specific rules. The principal task of the DNS table is the association of domain names with the site's IP addresses. An example of a domain name: bitrixsoft.com.
IP address It is a “name” of the computer in the network given according to the rules of TCP/IP protocols. IP address consists of 4 octets. One part of these octets identifies the subnet where the computer is located, and another part identifies this computer directly within a relevant subnet. An example of an IP address: 198.63.210.79.
Accept-Language A set of languages installed in a browser of a site’s visitor. For example, in MS Internet Explorer they may be installed in the menu Tools > Internet Options > General > Languages. In Mozilla Firefox: Tools > Options > General > Languages.
Unix-format time A number of seconds passed since January 1, 1970, accurate up to a microsecond. Nowadays, the Unix-format time may be fixed only up to the year 2038.
Rights in Unix systems Three types of rights – read, write, and execute are supported in the operating systems similar to Unix (which are presently predominate for Internet servers). These rights are allocated to each file or directory. The rights are repeated thrice: for the file owner, for the users’ group to which the owner belongs, and for all other users. As a rule, the rights are indicated in numerical format:
  • 4 - read;
  • 2 - write;
  • 1 - execute.

The sum of these numbers gives a final set of rights; e.g. 6 is read and write but without execute; 7 – all rights; 5 – read and execute.

Thus, e.g., the right 764 will mean: 7 – all rights for the file owner, 6 – read and write for the users’ group to which the file owner belongs, and 4 – read for all other users.

In PHP, all rights are indicated as octal numbers, and they must be given indicating prefix 0 without fail. Example: 0755.

Root-related path A path to a file starting from the catalog indicated in the parameter DocumentRoot in the web server settings established according to the rules of forming URL addresses. Example: /en/about/index.php.
Full path Includes protocol, domain, port, and a root-related path to a page (catalog). Example: http://www.bitrixsoft.com/en/about/index.php.
Absolute path An absolute path to a file includes a DocumentRoot and a root-related path.
DocumentRoot A path to the site root in the server file system. It shall be set in the web server settings, for example:
  • for Apache – in the file httpd.conf, parameter DocumentRoot;
  • for IIS – in the site properties; tab Home Directory > Local Path.
Submit Submission of HTML form data to server.
Session This term shall mean a PHP session. The session may open at the time of visiting the site and close when the browser window is closed. Also, a new session opens once a user has gone through authorization, and closes when a user terminates the authorization session (logs off). One “site visit” can be considered a synonym for the “session” term.
HTML-safe type As a rule, this term shall apply to the text where the following replacements have been made:
Source Result
< &lt;
> &gt;
" &quot;
& &amp;

Such replacements permit to display text inside HTML code without the risk that it will be interpreted by a browser as part of such HTML code.
Variable binding As applicable to SQL requests, this term means the binding of variable names (or table fields) with their values. As a rule, such technology is used for the BLOB, CLOB, LONG, etc. type fields intended for storage of big volumes of data.
Dump As applicable to the data base, this term means the downloading of contents and, possibly, the table structure into a file in a specific format for their further upload back to the same or any other base. Each base has its own utilities for dumping. For example, in MySQL the mysqldump utility permits downloading in the format of regular SQL requests.
As applicable to variables, dump means displaying the structure and contents of a variable as a text.
cron In operating systems similar to Unix, the cron utility permits to arrange for script execution according to a clearly established schedule.
Buffering This term in PHP means such a mode that all outgoing data flow from PHP script (e.g., HTML code) is tentatively stored in memory without being submitted to the user’s browser. Buffering in PHP may be activated using the function ob_start. Later on, buffering may be deactivated e.g. by using the function ob_end_flush; in this case, all accumulated data will be sent to the browser. Buffering permits you to arbitrarily manipulate outgoing data flow and serves as a basis for the deferred function technology.
Persistent connection When the connection with the base is created, a descriptor is set up in the memory for this connection. If the connection is normal, then after the execution of a script this descriptor is eliminated; and if the connection is persistent, the descriptor remains and can be used by other processes, if necessary. The advantage of a persistent connection is that it normally works faster. But there is also a drawback: the number of opened persistent connections is limited in the database settings and in case this limit is exceeded the visitor will not be able to enter the site until new connections are released.
Mail event This is a mail message that has its own type and is sent using relevant mail template. Mail event initiates fields of mail event type with specific values. The procedure for layout of these fields in a letter and also text of the letter is determined by mail template.
The class CEvent is intended for the creation of a mail event. It is used in the mail system.
Mail template This determines text of mail message and also procedure for layout of fields (placeholders) set in the type of mail event.
Mail templates are available in the administrative section on the page E-mail templates (Control Panel > System settings > Email Events > E-Mail templates).
The class CEventMessage is intended for manipulation of mail templates. It is used in the mail system.
Mail event type Determines a set of special fields (placeholders) that may be used in a mail template. At the time of the creation of a mail event these fields will be initiated with specific values.
The class CEventType is intended for the manipulation of mail events. It is used in the mail system.
Customization Change of behavior of a component or component template according to specific tasks.
API (SDK) Each system module contains a set of high-level functions for data retrieval in the public section of the site and a set of classes with low-level methods for more specialized work with module data. Detailed information on the API of each module is presented in the documentation for developers.



Courses developed by Bitrix24