Цитата |
---|
Сергей Манник написал: URL страницы информационного блока: /test/ URL страницы раздела: /test/#SECTION_CODE_PATH#/ URL страницы детального просмотра: /test/#SECTION_CODE_PATH#/#ELEMENT_CODE#.html
так выглядят настройки инфоблока...может тут я косякнул |
Да, к сожалению это нормальное поведение
С одной стороны, укороченные URL не попадут а карту сайта- если правильно указаны в настройках инфоблока (не компонента)
и поисковые системы не должны бы увидеть эти дубликаты. Но если уже увидели то:
в шаблоне catalog.section инфоблока каталога создаем файл result_modifier.php и в него вот это
Код |
---|
<?
//замена поля DETAIL_PAGE_URL из настроек инфоблока, т.к. в catalog.section не работает SECTION_CODE_PATH
$arID = array();
foreach ($arResult['ITEMS'] as $arItem){
$arID[] = $arItem['ID'];
}
$arOrder = array("SORT" => "ASC");
$arFilter = array(
'IBLOCK_ID' => $arParams['IBLOCK_ID'],
'ACTIVE' => 'Y',
'ID' => $arID,
);
$arSelect = array(
'ID',
'CODE',
'IBLOCK_ID',
'DETAIL_PAGE_URL',
);
$dbRes = CIBlockElement::GetList($arOrder, $arFilter, false, false, $arSelect);
while($arIt = $dbRes->GetNext()){
$arRes[$arIt['ID']] = $arIt['DETAIL_PAGE_URL'];
}
foreach ($arResult['ITEMS'] as &$arItem){
$arItem['DETAIL_PAGE_URL'] = $arRes[$arItem['ID']];
}
?>
|