Если просто убрать дублирование page=1 со всех роутов в пагинации, то достаточно в файле:
system/library/pagination.php
сделать следующие изменения:
шаг_0: найти строку:
$this->url = str_replace('%7Bpage%7D', '{page}', $this->url);
после неё добавляем:
$non_page_one = str_replace(array('&page={page}', '?page={page}', 'page={page}',), '', $this->url);
и теперь повсюду, где есть следующий код:
str_replace(array('&page={page}', '&page={page}'), '', $this->url)
заменить его на:
$non_page_one
тоесть по итогу, должно получиться что то вроде: (до)
if ($page > 1) {
$output .= '<li><a href="' . str_replace(array('&page={page}', '&page={page}'), '', $this->url) . '">' . $this->text_first . '</a></li>';
if ($page - 1 === 1) {
$output .= '<li><a href="' . str_replace(array('&page={page}', '&page={page}'), '', $this->url) . '">' . $this->text_prev . '</a></li>';
} else {
$output .= '<li><a href="' . str_replace('{page}', $page - 1, $this->url) . '">' . $this->text_prev . '</a></li>';
}
}
после правки:
if ($page > 1) {
$output .= '<li><a href="' . $non_page_one . '">' . $this->text_first . '</a></li>';
if ($page - 1 === 1) {
$output .= '<li><a href="' . $non_page_one . '">' . $this->text_prev . '</a></li>';
} else {
$output .= '<li><a href="' . str_replace('{page}', $page - 1, $this->url) . '">' . $this->text_prev . '</a></li>';
}
}
а таких вставок там несколько, так что будьте внимательны.
По другим правилам СЕО, то мы только с самой пагинацией долго мучаем, как например правильные линки canonnical, prev\next, слеш и без слешей окончание, добавление noindex, nofollow при выборе сортировки или изменения кол-ва отображаемого товара, работа с бесконечными аргументами, типа page=100500 и т.д., раскрывать все секреты тут не буду, нашей команде тоже надо на свой кусочек по правкам зарабатывать, обращайтесь - настроим так, что никто не настроит лучше (пафосно конечно, но пока не встречал грамотно настроенных магазинов), делаем дорого, но зато раз и с гарантией на проделки + после наших правок, поисковики влюбляются в ваш сайт, убираются ненужные дубли и т.д.