@bichukov

Как скрыть в url-е /filter/clear/apply/?

Есть сайт, и когда происходит сброс фильтра
то появляется такая строка
....catalog/aksessuary_dlya_volos/filter/clear/apply/....
Перекопал интернет и ничего не сработало.
Вставлял такой код
в хедер
<?
$x = $_SERVER['REQUEST_URI'];
if(strpos($x, '/filter/clear/apply/')!==false){
$APPLICATION->SetPageProperty("robots", "noindex, nofollow");
}
?>

но он игнорится и всеравно выодится как выодился.
Подскажите может кто-то знает как бы можно было скрыть в url /filter/clear/apply/?
  • Вопрос задан
  • 772 просмотра
Пригласить эксперта
Ответы на вопрос 2
@kusepa
В классе компонента catalog.smart.filter изменить строчки

if (!$smartParts)
    $smartParts[] = array("clear");


на

if (!$smartParts)
    return str_replace("filter/#SMART_FILTER_PATH#/apply/", '', $url);


Будет работать только если стоят стандартные настройки формирования урла в фильтре
Ответ написан
Комментировать
@Kamikaka007
Всё правильно, у вас код добавляет тэг с "noindex" на страницу если в ней есть '/filter/clear/apply/', а саму страницу оставляет. Вот код с редиректом 301

$x = $_SERVER['REQUEST_URI'];
    if(strpos($x, '/filter/clear/apply/')!==false){
        $filterClearUrl = str_replace("/filter/clear/apply/", "/", $x);
        header("HTTP/1.1 301 Moved Permanently");
        header("Location: ".$filterClearUrl, true, 301);
	exit();
    }
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы