Столкнулся с такой проблемой
после изменения структуры сайта пришлось делать редирект на новые папки/адреса
старая ссылка выглядела вот так
http://мой_сайт/catalog/programs/detail.php?ID=5869
новая ссылка выглядит следующим образом
http://мой_сайт/e-store/programs/594/5869 , где 594 SECTION_ID а 5869 ID элемента
выход один редирект , так как старые ссылки в индексе у поисковиков.
Но проблема в том что в старой ссылке передается всего один параметр ID , а SECTION_ID не известен и с помощью htacess такой редирект как я понял осуществить не удасться.
ведь в новой ссылке уже 2 параметра
Решел пойти другим путем и установить PHP редирект со страницы сайта с компонентом детального просмотра в надежде что там легко удастся получить SECTION_ID.
Получилось пока следующее
И опять наткнулся на туже проблему нет SECTION_ID
перепробовал несколько вариантов , пытался смотреть в коде компонентов , но наверное просто не понял как там это реализуется.
Очень был бы рад хоть какой нибудь подсказке как всетаки записать в мою переменную ID раздела для элемента
Заранее спасибо.
после изменения структуры сайта пришлось делать редирект на новые папки/адреса
старая ссылка выглядела вот так
http://мой_сайт/catalog/programs/detail.php?ID=5869
новая ссылка выглядит следующим образом
http://мой_сайт/e-store/programs/594/5869 , где 594 SECTION_ID а 5869 ID элемента
выход один редирект , так как старые ссылки в индексе у поисковиков.
Но проблема в том что в старой ссылке передается всего один параметр ID , а SECTION_ID не известен и с помощью htacess такой редирект как я понял осуществить не удасться.
ведь в новой ссылке уже 2 параметра
Решел пойти другим путем и установить PHP редирект со страницы сайта с компонентом детального просмотра в надежде что там легко удастся получить SECTION_ID.
Получилось пока следующее
Код |
---|
<? Header( "HTTP/1.1 301 Moved Permanently" ); $section = КАК в эту переменную записать SECTON_ID текущего элемента????? Header("Location: http://мой_сайт/e-store/programs/$section/$ID"); //id элемента получается а вот раздела нет. ?> <?$APPLICATION->IncludeFile("iblock/catalog/element.php", Array( 'IBLOCK_TYPE' => 'catalog', // Тип инфо-блока 'IBLOCK_ID' => '32', // Инфо-блок 'ELEMENT_ID' => $_REQUEST["ID"], // ID элемента 'SECTION_URL' => '/catalog/programs/section.php?', // URL ведущий на страницу с содержимым раздела 'LINK_IBLOCK_TYPE' => '', // Тип инфо-блока, элементы которого связаны с текущим элементом 'LINK_IBLOCK_ID' => '', // ID инфо-блока, элементы которого связаны с текущим элементом 'LINK_PROPERTY_SID' => '', // Свойство в котором хранится связь 'LINK_ELEMENTS_URL' => '/catalog/accessory/byphone.php?', // URL на страницу где будут показан список связанных элементов 'arrFIELD_CODE' => Array('NAME','PREVIEW_TEXT','DETAIL_TEXT','DETAIL_PICTURE'), // Поля 'arrPROPERTY_CODE' => '', // Свойства 'CACHE_TIME' => '0', // Время кэширования (сек.) 'DISPLAY_PANEL' => 'Y', // Добавлять в админ. панель кнопки для данного компонента ));?> <?$APPLICATION->IncludeFile("catalog/price_table.php", Array( 'PRODUCT_ID' => $GLOBALS["ID"], // Код товара 'PRICE_TYPE_OLD' => '1', // Тип "старой" цены 'PRICE_TYPE_NEW' => '1', // Тип "новой" цены 'BASKET_PAGE' => '/personal/cart', // Страница корзины 'CACHE_TIME' => '600', // Время кэширования данных (секунд) ));?> |
И опять наткнулся на туже проблему нет SECTION_ID
перепробовал несколько вариантов , пытался смотреть в коде компонентов , но наверное просто не понял как там это реализуется.
Очень был бы рад хоть какой нибудь подсказке как всетаки записать в мою переменную ID раздела для элемента
Заранее спасибо.