Исправляем баг в SimplaCMS — несуществующая страница пагинации в категории отдает 200 ОК.

Собственно есть такой баг — если вручную задать страницу пагинации в категории, то вместо 404 движок отдаст 200 ОК. Это легко проверить на официальном сайте, собственно вот http://demo.simplacms.ru/catalog/mobilnye-telefony?page=10

Исправить этот баг довольно просто, нужно проверять в контроллере текущую страницу пагинации и отдавать 404 Not Found, если текущая страница больше чем последняя.

Открываем файл view/ProductsView.php и заменяем в самом конце

return $this->body;
на
if ( ($pages_num>1) && ($current_page>$pages_num) )
{
$_GET['page_url'] = '404';
$_GET['module'] = 'PageView';
} else {
return $this->body;
}

Всё 🙂

Добавить комментарий

Ваш e-mail не будет опубликован.