Как сделать типовое решение для Bitrix Marketplace проиндексированным?
Модератор завернул моё типовое решение потому что не всё находится в поиске. Я проиндексировал сайт заново и поиск заработал корректно. Как мне сделать моё типовое решение тоже проиндексированным по умолчанию? Или другими словами как мне перенести новый индекс в типовое решение? Чтобы когда модератор установил его всё было проиндексировано и поиск всё находил.
Ответы (1 шт):
Автор решения: Сергей Савченко
→ Ссылка
уменя такая структура типовое решение/site/services/main/search.php
в типовое решение site/services/.services.php добавить
"main" => Array(
"NAME" => GetMessage("SERVICE_MAIN_SETTINGS"),
"STAGES" => Array(
"search.php", // Indexing files
),
),
и сам файл:
<?
if(!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true)
die();
if (!CModule::IncludeModule("search"))
return;
if (COption::GetOptionString("search", "exclude_mask") == "")
COption::SetOptionString("search", "exclude_mask", "/bitrix/*;/404.php;/upload/*");
if(WIZARD_SITE_ID != "")
$NS["SITE_ID"] = WIZARD_SITE_ID;
if (!isset($_SESSION['SearchFirst']))
$NS = CSearch::ReIndexAll(false, 20, $NS);
else
$NS = CSearch::ReIndexAll(false, 20, $_SESSION['SearchNS']);
if (is_array($NS)) //repeat step, if indexing doesn't finish
{
$this->repeatCurrentService = true;
$_SESSION['SearchNS'] = $NS;
$_SESSION['SearchFirst'] = 1;
}
else
{
unset($_SESSION['SearchNS']);
unset($_SESSION['SearchFirst']);
}
?>