From d896665b4e0ee9e8af60aa7231606ebd3f2d241c Mon Sep 17 00:00:00 2001 From: 700nov <55895873+700nov@users.noreply.github.com> Date: Sun, 29 Sep 2019 02:24:21 +0000 Subject: [PATCH 1/2] Create GetElementsListCache.php --- GetElementsListCache.php | 42 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 GetElementsListCache.php diff --git a/GetElementsListCache.php b/GetElementsListCache.php new file mode 100644 index 0000000..dd98383 --- /dev/null +++ b/GetElementsListCache.php @@ -0,0 +1,42 @@ +InitCache($cacheTime, $cacheId, $cachePath)){ // Если кэш с текущими параметрами существует + $elements_list = $obCache->GetVars(); + }else{ // Если кэш с текущими параметрами Не существует + $elements_list = CIBlockElement::GetList($ListCacheParams['arSort'], $ListCacheParams['arSelect'], false, Array("nPageSize"=>50), $ListCacheParams['arFilter']); // Получаем список элементов инфоблока + $obCache->StartDataCache($cacheTime, $cacheId, $cachePath); + $obCache->EndDataCache($elements_list); // Записываем список в кэш + } + return $elements_list; + } +} +/* END Класс - Работа с инфоблоками */ + + + +/* Применение метода - получение кэшированногого списка элементов инфоблока */ +$ListCacheParams = Array( // Задаем параметры метода + 'arSort' => Array("ID" => 'asc'), // Сортировка + 'arSelect' => Array("ID", "NAME", "DATE_ACTIVE_FROM"), // Поля + 'arFilter' => Array("IBLOCK_ID"=>IntVal(24), "ACTIVE_DATE"=>"Y", "ACTIVE"=>"Y") // Фильтр +); + +$object = new IblockWork; +$elements_list = $object->GetElementsListCache($ListCacheParams); // Обращаемся к методу + +echo '
';
+print_r($elements_list); // Выводим результат
+echo '
'; + +/* END Применение метода - получение кэшированногого списка элементов инфоблока */ + +require($_SERVER["DOCUMENT_ROOT"]."/bitrix/footer.php"); +?> From 7f5e9b18954f8b31715a803c161bd0ebb073315f Mon Sep 17 00:00:00 2001 From: 700nov <55895873+700nov@users.noreply.github.com> Date: Sun, 29 Sep 2019 02:26:18 +0000 Subject: [PATCH 2/2] Create getLastNews.php --- getLastNews.php | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 getLastNews.php diff --git a/getLastNews.php b/getLastNews.php new file mode 100644 index 0000000..5c6f213 --- /dev/null +++ b/getLastNews.php @@ -0,0 +1,27 @@ +#!/usr/bin/env php +xpath('//channel/item[position()<6]'); // Получаем последние 5 новостей из xml + $str = ''; + + // Перебираем новости и записываем в строку + foreach($xml_object as $xml_element){ + $str .= $xml_element->title ? ' • ' . trim($xml_element->title) . PHP_EOL : ''; + $str .= $xml_element->link ? ' • ' . trim($xml_element->link) . PHP_EOL : ''; + $str .= $xml_element->description ? ' • ' . trim($xml_element->description) . PHP_EOL : ''; + $str .= PHP_EOL; + } + return $str; +}