Добрый день!
В sitemap.xml не добавляются элементы инфоблока. Галочки для выгрузки инфоблоков и элементов стоят, переиндексация поиска делалась.
В чем может быть проблема?
Обратитесь в « |
Обратитесь в « |
<?$APPLICATION->IncludeComponent( "medsite:medsite.userview", "vrukah_specialists", Array( "CACHE_TIME" => "3600", "CACHE_TYPE" => "N", "COLLAPSE_SCHEDULE_IF_MORE" => "10", "COMPANY_IB_ID" => "3", "COMPOSITE_FRAME_MODE" => "A", "COMPOSITE_FRAME_TYPE" => "AUTO", "DATE_FORMAT" => "d.m.Y", "DATE_FORMAT_NO_YEAR" => "d.m", "DATE_TIME_FORMAT" => "d.m.Y H:i:s", "DEPARTMENT_IB_ID" => "4", "ESCAPE_HTML" => "Y", "FILTER_1C_USERS" => "N", "FILTER_NAME" => "users", "GROUPS" => array("6"), "IBLOCK_ID" => "", "NAME_TEMPLATE" => "#LAST_NAME# #NAME# #SECOND_NAME#", "ORG_IBLOCK_TYPE" => "foundations", "PLACEMENT_IB_ID" => "6", "PRICE_IBLOCK_TYPE" => "prices", "PRICE_IB_ID" => "8", "REVIEW_FORM_ID" => "3", "SCHEDULE_LINK" => "/schedule/record_wizard.php?STEP=service&SHOW=employee&EMPLOYEE=#ID#", "SECTOR_IB_ID" => "5", "SEF_FOLDER" => "/employees/", "SEF_MODE" => "Y", "SEF_URL_TEMPLATES" => Array("index"=>"index.php","review"=>"#user_id#/review/","schedule"=>"#user_id#/schedule/","services"=>"#user_id#/services/","user"=>"#user_id#/"), "SHOW_ERROR_ON_NULL" => "Y", "SHOW_NAV_BOTTOM" => "Y", "SHOW_NAV_TOP" => "N", "SHOW_SERVICES" => "N", "SORT_TYPE" => "ASC", "SPEC_IBLOCK_ID" => "25", "SPEC_IBLOCK_TYPE" => "foundations", "STRUCTURE_FILTER" => "structure", "USER" => "/employees/personal_info.php", "USERS_PER_PAGE" => "500", "USER_CONSENT" => "Y", "USER_CONSENT_ID" => "1", "USER_CONSENT_IS_CHECKED" => "Y", "USER_CONSENT_IS_LOADED" => "N", "USER_FIELDS" => array("NAME","LAST_NAME","WORK_PROFILE","WORK_NOTES"), "USER_PROPERTY" => array("UF_INFO_EDU","UF_INFO_EXPERIENCE","UF_ADD_EDUCATION"), "USER_SORT" => "", "WEEK_LEAF" => "2" ) );?> |
class NewsIBlockController extends \Bitrix\Iblock\Controller\DefaultElement{ protected function getDefaultPreFilters(): array { return []; } //метод определяющий какие поля разрешены для запроса через REST public static function getAllowedList(): array { return ['ID', 'IBLOCK_ID', "DETAIL_TEXT", "DETAIL_PICTURE", 'NAME', "PICS_NEWS"]; } } |
//Перед использованием класса NewsIBlockController нужно подключить модуль iblock \Bitrix\Main\Loader::includeModule('iblock'); $serviceName = 'iblock.element.apiNews.rest.controller'; $serviceConfig = [ 'constructor' => static function () { return new \NewsIBlockController(); }, ]; $serviceLocator = \Bitrix\Main\DI\ServiceLocator::getInstance(); try { $serviceLocator->addInstanceLazy($serviceName, $serviceConfig); if ($serviceLocator->has('iblock.element.apiNews.rest.controller')) { //проверка успешной регистрации сервиса $newsService = $serviceLocator->get('iblock.element.apiNews.rest.controller'); AddMessage2Log(print_r($newsService->getElementEntityAllowedList(), true)); } } catch (Exception $e) { AddMessage2Log($serviceName ." error - " . $e->getMessage()); } |
https://myBitrix.com/rest/1/asdasf3bz547365nk/iblock.Element.get.json?iblockId=4&elementId=8&select[0]=ID&select[1]=DETAIL_TEXT&select[2]=NAME |
<?php require_once($_SERVER['DOCUMENT_ROOT'] . "/bitrix/modules/main/include/prolog_admin.php"); /** * @var CMain $APPLICATION */ ?> <?$APPLICATION->IncludeComponent( "bitrix:rest.hook", ".default", Array( "COMPONENT_TEMPLATE" => ".default", "SEF_FOLDER" => "/rest-hook/", "SEF_MODE" => "Y", "SEF_URL_TEMPLATES" => [ "list"=>"", "event_list"=>"event/", "event_edit"=>"event/#id#/", "ap_list"=>"ap/", "ap_edit"=>"ap/#id#/", ] ) );?> //чуть-чуть стилей, иначе кнопка будет просто как текст <st yle> .webform-button.webform-button-create{ background: #025ea1; padding: 10px 15px; text-align: center; color:#fff; cursor: pointer; } </style> <? require($_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/main/include/epilog_admin.php"); |
4 => array ( 'CONDITION' => '#^/rest-hook/#', 'RULE' => '', 'ID' => 'bitrix:rest.hook', 'PATH' => '/rest-hook/index.php', 'SORT' => 100, ), |
AddEventHandler('rest', 'OnRestServiceBuildDescription', ['\NewsIBlockController', 'addCustomRestMethods']); |
//обработчик события `OnRestServiceBuildDescription`. //В нём регистрируются методы rest api и указываются их обработчики public static function addCustomRestMethods(): array { return [ 'iblock' => [ 'iblock.Element.add' => [ 'callback' => [__CLASS__, 'iBlockElementAdd'], 'options' => [], ], ], ]; } //упрощённый метод для добавления нового элемента public static function iBlockElementAdd($query, $nav, CRestServer $server): array { try { if ($query['error']) { throw new \Bitrix\Rest\RestException( 'Message', 402, \CRestServer::STATUS_PAYMENT_REQUIRED ); } if (!isset($query['iblockId'])) { throw new \Bitrix\Rest\RestException( 'IBLOCK_ID can not be empty', 400, \CRestServer::STATUS_WRONG_REQUEST ); } if (!isset($query['fields'])) { throw new \Bitrix\Rest\RestException( 'Iblock fields can not be empty', 400, \CRestServer::STATUS_WRONG_REQUEST ); } \Bitrix\Main\Loader::includeModule('iblock'); global $USER; $el = new \CIBlockElement; $arFields = Array( "MODIFIED_BY" => $USER->GetID(), "IBLOCK_SECTION_ID" => false, "IBLOCK_ID" => (int)$query['iblockId'], "NAME" => $query['fields']['NAME'], "CODE" => $query['fields']['CODE'], "ACTIVE" => "Y", ); if($elId = $el->Add($arFields)) return ['result' => $elId]; else{ throw new \Bitrix\Rest\RestException( $el->LAST_ERROR ); } } catch (Exception $e){ return [ 'error' => $e->getCode(), 'error_description' => $e->getMessage() ]; } } |
https://myBitrix.com/rest/1/webHookToken/iblock.Element.add.json?iblockId=4&fields[NAME]=newELEM&fields[CODE]=new_elem |
Обратитесь в « |
Обратитесь в |
Обратитесь в |
В личном кабинете | В 1С-Битрикс | |
Обновление остатков | Прайс-листы (каждые 30 минут) или вручную | API каждые 15 минут |
Подтверждение заказа | Вручную в течение 2-х часов после заказа | Автоматически |
Изменение статусов, состава заказа, маркировка товаров, трек-номер | Вручную | Автоматически из заказа 1С-Битрикс |
Расчет даты доставки (DBS) | Настройки в личным кабинете | Доставка модуля интернет-магазин с учетом местоположения |
Единый кабинет из разных источников | Нет | Да |
Обратитесь в |
$sorter = [ 'CATALOG_STORE_AMOUNT_3' => 'DESC', 'CATALOG_PRICE_3' =>'ASC,NULLS', ]; $elements = $query ->setPagerTemplate('.default') ->where($filter) ->where($arrFilter ?: []) ->orderBy($sorter, true) ->page($page, $this->arParams['PAGE_ELEMENT_COUNT']) ->fetchAll(); |
$file = $this->GetVariable('URL_OCENKA'); $file1 = base64_encode($file); $commentData = [ 'AUTHOR_ID' => $userId, 'TEXT' => $newComment, 'BINDINGS' => [['ENTITY_TYPE_ID' => \CCrmOwnerType::Deal, 'ENTITY_ID' => $dealId,]], 'SETTINGS' => ['HAS_FILES' => 'Y'], 'FILES' => [["Тест", $file1]], ]; $entryID = Crm\Timeline\CommentEntry::create($commentData); |
class MyStructure { public $Params; } $date = new DateTime(); $param = new MyStructure(); $param->Params->Property->name = 'nameParams'; $param->Params->Property->Value = new SoapVar($date->format('c'), XSD_DATETIME, 'dateTime', 'http://www.w3.org/2001/XMLSchema', 'Value'); |
<ns2:Params> <ns1:Property name="nameParams"> <ns1:Value xsi:type="xsd:dateTime"> 2022-02-09T22:31:25+03:00 </ns1:Value> </ns1:Property> </ns2:Params> |