Привет, товарищи программисты. Такая ситуация: сокращаю ссылки, избавляюсь от раздела /catalog/.
Для этого в файле index.php в структуре сайта (/catalog/index.php ) делаю условия, где после по 301 редиректу кидаю в новую директорию в корне структуры на сайте, например /http/my_dir/index.php
Пример:
Сам ВОПРОС: там, где в структуре директорий (вложенности) больше 2, то всё работает нормально (/site/section_1/section_2/element/), но вот где структура такая: /site/section_1/element/ - ссылка работает только в том случае, если при её построении повторяется либо раздел (/site/section_1/section_1/element/), либо символьный код элемента (/site/section_1/my_element/my_element/).
Подскажите, если этой информации достаточно, в чём может быть проблема? Может где-то в компоненте стоит условие шаблона ссылки или указывается её размер... И где это можно найти?
Для этого в файле index.php в структуре сайта (/catalog/index.php ) делаю условия, где после по 301 редиректу кидаю в новую директорию в корне структуры на сайте, например /http/my_dir/index.php
Пример:
| Код |
|---|
<?
$page = $APPLICATION->GetCurPage();
if(strpos($page, "catalog/section_1/")) {
$componentTemplate = "my_template";
$arPage = explode('/',$page);
$arPage = explode('/',$page);
if(count($arPage) <= 4){
LocalRedirect('/section_1/',false,'301 Moved permanently'); //кидает в директорию в корне сайта section_1, где в ней уже есть новый index.php
}else{
$countPageEnd = (count($arPage) - 2);
$arFilter = array('IBLOCK_ID'=>3,'CODE'=>$arPage[$countPageEnd]);
$arSelect = array('IBLOCK_ID','ID','NAME','CODE');
$res = CIBlockElement::GetList(Array('sort'=>'asc'), $arFilter, false, false, $arSelect);
if($rs = $res->GetNext()){
LocalRedirect('/'.$arPage[2].'/'.$arPage[3].'/'.$arPage[$countPageEnd].'/',false,'301 Moved permanently');
}
}
}
?> |
Сам ВОПРОС: там, где в структуре директорий (вложенности) больше 2, то всё работает нормально (/site/section_1/section_2/element/), но вот где структура такая: /site/section_1/element/ - ссылка работает только в том случае, если при её построении повторяется либо раздел (/site/section_1/section_1/element/), либо символьный код элемента (/site/section_1/my_element/my_element/).
Подскажите, если этой информации достаточно, в чём может быть проблема? Может где-то в компоненте стоит условие шаблона ссылки или указывается её размер... И где это можно найти?