-
Notifications
You must be signed in to change notification settings - Fork 0
Bitrix
Установка backup сайта на localhost:
-
Создать backup в папке сайта с дефолтными параметрами (папка /bitrix/backup на сервере закрыта для внешнего доступа!)
-
Скачать backup через ftp на localhost в корневую папку сайта
-
Сохранить в папке сайта файлы restore.php и bitrix_server_test.php
-
Выполнить bitrix_server_test.php
-
Настроить php.ini согласно требованиям bitrix_server_test.php:
должны быть подключены модули mysqli и mbstring (sudo apt-get install php-mbstring - если не установлен)
extension=mysqli //(default is commented) extension=mbstring //(default is commented) short_open_tag=On display_errors = On
дополнительно:
mbstring.internal_encoding=UTF-8 mbstring.func_overload = 2
6.Создать в ОС пользователя bitrix (lowercase!) и группу bitrix
7.Дать права записи пользователю и группе bitrix на папку сайта и все файлы внутри папки
sudo chown -R {user}:{group} {path}
sudo chmod -R 775 {path}
8.В базе mysql создать пользователя bitrix@localhost с паролем:
alter user 'bitrix'@'localhost' identified by '{password}';
9.Перезагрузить mysql: sudo service mysql restart
10.Выполнить restore.php для распаковки архива
11.Следовать указаниям в ходе выполнения
12.Указать пользователя и пароль БД, назначенные в п.8, назначить имя БД
13.Сайт готов. Назначить права записи папкам и файлам сайта, которые должны быть доступны для изменения
Компонент:
$arResult[] - содержит данные инфоблока $arResult["FIELDS"] $arResult["PROPERTIES"]
$cmain→GetCurPage() - текущий путь
На AJAX страницах не подключать визуальные части header и footer. Вместо require($_SERVER["DOCUMENT_ROOT"]."/bitrix/header.php"); пропишите require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_before.php"); Таким образом Вы подключите служебную часть пролога, то есть все функции битрикс, но не будет выводиться header. Следовательно не придется применять $GLOBALS['APPLICATION']->RestartBuffer(); Вместо require($_SERVER["DOCUMENT_ROOT"]."/bitrix/footer.php"); пропишите require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/epilog_after.php");
Подключение CSS:
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/header.php");
$APPLICATION->SetTitle("Title");
$cmain = new CMain;
$cmain->SetAdditionalCSS($cmain->GetCurPage().'styles.css');
Module::IncludeModule("iblock"); - подключение модуля iblock
CIBlockSection::GetCount(["IBLOCK_ID"=>$blockID, "DEPTH_LEVEL"=>1]); - к-во разделов в корне инфоблока $blockID
вывод списка разделов корня инфоблока $blockID:
$list = CIBlockSection::GetList([], ["IBLOCK_ID"=>$blockID, "DEPTH_LEVEL" => "1"], false);
while($el = $list->GetNext())
{
print_r($el);
}
Проверка наличия раздела $id в инфоблоке $iblock
echo CIBlockSection::GetCount(["BLOCK_ID"=>$iblock, "ID"=>$id]);
Добавление раздела в корень инфоблока $blockID:
$bs = new CIBlockSection; $arFields = Array( "IBLOCK_ID" => 21, "IBLOCK_SECTION_ID"=>NULL, // NULL - add to root "NAME" => "The new section", "CODE"=>"tns" // required field ); $ID = $bs->Add($arFields); echo "New ID: ".$ID;