Сам я не программист, но нужно внести небольшое изменение. В оригинальной реализации, при запросе страницы, которой нет (например, уменьшилось количество товаров в каталоге), выводится первая страница. При ручном сёрфинге это не проблема, так как ссылок на несуществующую страницу уже нет, но вот поисковые боты могут продолжать по ним ходить очень долго. Так как компания 1С:Битрикс заявку приняла, но сроков не сказала, когда они при переходе на несуществующие страницы будут отдавать 404, набросал небольшой код в компонент, для тестирования, почти работает как мне нужно:
Код |
---|
$current_page = $APPLICATION->GetCurPage();
if (intval($_REQUEST['PAGEN_1']) > 1) $current_page .= '?PAGEN_1='.$_REQUEST['PAGEN_1'];
if ($current_page) $APPLICATION->SetPageProperty("canonical", $current_page); |
Только вот никак не пойму как узнать количество страниц, что бы в первое условие добавить не только добавление в каноническую ссылку GET-параметра PAGEN_1 только для страниц далее первой, но и ограничить добавление этого параметра только для существующих страниц.