e-Learning
JavaScript needs to be enabled to view video!
Authorization
Remember me on this computer
Forgot your password?
Register
Select course
Bitrix Virtual Appliance
Installing Bitrix24 Self-hosted
Bitrix24 Self-hosted administration
Bitrix24 Bot Platform
Bitrix Framework
Bitrix24 Applications
Bitrix Framework
Collections
147
/
386
Course description
What is Bitrix Framework?
For Those Who Switched to Bitrix Framework from Other Platforms
Glossary
Production Architecture
Production Architecture
Structure of files
Access Rights
A Site in Terms of Bitrix Framework
Page Execution and Site Template
Language and Language Files
Processing Techniques
Control Panel toolbar
Agents
Examples of agents
Caching
Component caching (Managed cache mode)
Events
Deferred functions
Performance
Sessions and cookies
Variable $_SESSION
Session cache (Local Session)
Hot&cold sessions
Data storage setting for session
Handling the sessions
Encrypted cookies
External Authorization
Mail subsystem
Balancing queries in cluser
Core D7
Core Parameter Setup
Connection to Redis, Memcache
SMTP server local settings
Name Spaces
Modules in D7
Exceptions
Code Writing Rules
Applications and Context
Errors
API
Working with the Database
Classes. Examples
Handling D7. Location example
Service Locator
Locator registration
Controllers
Controller
Controllers and component
Practical hints for developers
Practical advice: interaction with controllers from Javascript
Practical advice: page navigation
Practical advice: integration with REST module
Practical advice: dependency integration
Routing
Routes
Groups
Generating links
Loggers
Design Integration
Using Access Rights
Site Design Template
Design Template
Site Template File Structure
Site template developing
Site template management
Page templates developing
Using message files
Examples of work and problem solutions
Using message files for localization
Implementation
Localization
Change of Phrases in Components and Modules
Localization Archive Import/Export
Editable areas
Managing editable areas
Example of Using Include Areas
Navigation tools
Site Map
Menu
Menu Types
Menu Building and Display
Menu Templates
Menu Control
Problems with Menu Caching
Examples of Resolving Specific Tasks in the Menu
Navigation chain
Managing Navigation Chain via the System Interface
Navigation chain show
Managing Navigation Chain Template
Examples
Advertisement
Banner types
Controlling advertising shows using keywords
Managing Template Service Data
Editing Service Areas
Managing Page Encoding
Use of Encodings
Determining the Current Encoding
Managing Document Header
Managing Header in the Code
Work Examples
Managing Metadata Values
Managing Metadata in a Code
CSS management
Managing CCS styles in the visual HTML editor
Example of Site Template Stylesheet
Connecting CSS
Setup of External Appearance of Additional Elements of the Site Design
Information Blocks
Working with Infoblocks Using Standard Means
Infoblocks 2.0
Action Plan in Case of Problems
Filtering
Filtering iblock elements without filter component
Handling iblocks via API
Work with the User Properties of Infoblocks
Infoblock Copy
Infoblocks in Document Flow
SEO in Infoblocks: Calculated Properties
Highload blocks
Module architecture
User Forms for Element Editing
Errors When Working with Infoblocks
Examples
Handling custom iblock properties
Examples of working with multiple properties
Copy element field values to properties
Obtaining the sum of field values of related iblocks
Printing iblock element properties
ORM
Entity concept and description
Operations with Entities
Objects
Object class
Named methods
Value types
Data read (get, require, remindActual, primary, collectValues, runtime)
Write (set, reset, unset)
Checks (isFilled, isChanged, has)
Object status
Create and edit (save, new)
Deleting action
Restoring (wakeUp)
Filling action
Relations (addTo, removeFrom, removeAll)
ArrayAccess
Collections
Collections class
Access to Collection items
Group actions
Restoring collection
Relations
1:N
1:1
N:M
Class annotations
Backward compatibility
Data retrieval
getList
Short calls
Query object
Pre-set data scope fetch
Data retrieval from stored procedures
Data fetching in relations 1:N and N:M
ORM filter
Entity Relations (legacy variant)
Using ORM or why fields from SELECT and ORDER BY are automatically included into GROUP BY
Page Navigation
ORM integration in the information blocks
Concept and architecture
Read and write
Events and custom property types
Inheritance
Components
Simple and composite components
Location of a Component in the System and Its Connection
Component Structure
Composite Component Structure
Component Description
Component Parameters
Component Templates
Support of Component Classes
result_modifier.php
component_epilog.php
Operation of a Composite Component in a SEF Mode
Frequent Errors
Component Caching
Managed (auto) cache mode
Cache Dependencies (Tagged Cache)
Adding an Own Tag to Component Caches
Working with Components
Template Customization
Modification of a Simple Component Template within a Composite Component
Template Modification or Creation of result_modifier?
Component Customization
Simple Example of a Component Customization
Modifying a Simple Component as a Part of a Composite One
Creating Components
Additional Methods
Redefinition of Incoming Variables
User-Defined Templating Engines
Operation of a Composite Component in SEF Mode
Ways of Data Transmission among Components
A Simple Example of a Component Creation
Component Creation Example
TinyMCE Visual Editor Integration Component
Caching in own components
CUSTOM Parameter Type
More examples
Errors When Working with Components
Events
Events
Modules
File Structure
Description and Parameters
Administrative Scripts
Administrative Menu
Interaction of Modules
Installation and Deletion
Module Customization
Example of Changing Module Operation
Programming in Bitrix Framework
Golden Rules
PHP command line
The file init.php
Organizing development
/local folder
Bitrix CLI
Composer and Bitrix Framework
UTF-8 or a National Encoding?
Working with databases
Example of database handling
Migration to MySQL
Updating the site encoding
Language Files
URL SEF configuration
Complex component and SEF mode
Examples
Access permissions
JS Library
Connecting JS code
JS class for component template
Media player JS extensions
Formatting dates in Javascript
Examples of JS Code Optimization
Frequent Errors and Recommendations
Extensions
Toolkit: @bitrix/cli
@bitrix/cli: building project with NPM
Nested libraries
Vue.js and Bitrix Framework
Integration with Vue.js
BitrixVue 3
Connecting and launching BitrixVue 3
Creating Vue application
Example of completed Vue app
Components
Handling components
Component lazy loading
Component mutation
Rules for component mutations
Component cloning
Example of component as JS extension
General rules for formatting and order
Component property formatting and order
Component naming and import
Directives
Registering directives
Example of directive as JS extension
Interaction with Bitrix Framework
Class for context forwarding
Class for handling localizations
Class for handling app-level events
Class for handling global data
Class for handling REST client
Class for handling Pull client
Best practices
Localization handling
Event-driven model
Performance
Tips and tricks
DevTools setup
Centralized data storage
Pinia
Connecting and launching
Handling multiple storages (modules)
Example of application with Pinia storage
Vuex
Connecting and launch
Handling multiple storages (modules)
Example of application with Vuex storage
Update from Vuex 3 to Vuex 4
Additional information
Access to original Vue 3 methods
Moving portion of template outside Vue application (Teleport)
Routing for external sites (VueRouter)
Integration with Dexie (IndexedDB)
External libraries
Transition from Vue 2 to BitrixVue 3
Creating new app (instance)
Global methods
Template directives
Transitions
Logic for joint watch parameter and array
Keystroke tracking
Directive creating
Global component
Event-driven model
Localizations
Forwarding of execution context link to Vue application
Data storage in application
REST and Pull clients
Changes in Vuex 4 operation
Interface of the Control Panel Toolbar as Seen by a Developer
Adding Buttons to the Control Panel
Adding Context Menu
Component Toolbar
Context Menu of the List Items
Administrative Pages in the Public Section
New Buffering Methods
Some Theory
Notes on $arParams and $arResult
HTTP POST Queries
Code Writing Rules
Security
Sanitizer
Anti-Frame Protection
Examples, tricks, and advice
The Use of Page Navigation for Data Arrays
Use of Agents
Example of Agents
Launching of Agents from Cron
Use of Events
How to Write an Event Handler
Additional Information
SQL Query and PHP Prompt
Sorting in the components news.list and catalog.section
Custom Fields
Work examples
Adding, editing, and deleting custom properties and their values
Fields to Nonstandard Objects and New Objects
Gadgets
Project Testing
Project Quality Control
Project Delivery
Use
Modification of Tests
Debugging Web Applications
Push and Pull module
Optimizing number of server queries
Push & Pull module for guests
Subscription to module events
Online Store customization
Products and CIBlockElement::GetList
Types of order custom properties
Adding restrictions
Company user fields
Customizing types of additional services
Delivery services customization
Payment system customization
Payment system template customization
Custom cash register handler
Printing receipts via payment system
Handling delivery service REST
Delivery service creating and setup
Using Delivery service in Sales Center scenarios
Version Control System
Business Processes for Developer
Template of a Business Process
Business Process
Activities
Main Standard Activities
Properties of Activities
Composite Activities
Creating Own Activities
Executing a business process activity using API
Arbitrary PHP Code in a Business Process
How to Start One Business Process from Another?
Log Output
Log Output. Variables
Arithmetic Operations in a Business Process
Determining the Manager’s ID
Adding Information to Infoblock from a Business Process
Additional Information and Examples
If there is no API description
Web services
Views: 3199
Last Modified: 30.03.2022
Chapter contents:
Collections class
Access to Collection items
Group actions
Restoring collection
Courses developed by
Bitrix24
Course description
prev
ArrayAccess
Back to top
↑
Collections class
next