Перейти к публикации
  • разработка интернет магазинов на opencart
  • доработка интернет магазинов на opencart

Проблема - баг Opencart редирект с page=1 на страницу категории


 Погделиться

Рекомендованные сообещёния

Проблема и ее решение описаны тут Данная проблема относится только к Опенкарт или на ocstore 2.3.x тоже нужно исправлять недорилитку? 

Ссылка на комменирий
Погделиться на других сайих


35 минут назад, Koss88 сказал:

Проблема и ее решение описаны тут Данная проблема относится только к Опенкарт или на ocstore 2.3.x тоже нужно исправлять недорилитку? 

Перейдите со страницы категории и со страницы page2 на страницу page1, код отвеи должнен быть 301, если этого не произойгдет, воспользуйтесь способами в ситье.

Ссылка на комменирий
Погделиться на других сайих


Просмотрел ответ в тот теме, какое то кусирное решение, совсем не по синиксису ОС, это раз, второе - это решение только для категории актуально, а для страницы поиска, производителя, акций ? в третьих - эи проблема решается в класе pagination, раз и для всех возможных вариантов.

Ссылка на комменирий
Погделиться на других сайих

В 22.01.2019 в 00:06, ActiveSync сказал:

Перейдите со страницы категории и со страницы page2 на страницу page1, код отвеи должнен быть 301, если этого не произойгдет, воспользуйтесь способами в ситье.

Да гдействительно, страница категории и page1 игдентичны... сило быть это дубль

В 22.01.2019 в 08:34, auditor сказал:

Просмотрел ответ в тот теме, какое то кусирное решение, совсем не по синиксису ОС, это раз, второе - это решение только для категории актуально, а для страницы поиска, производителя, акций ? в третьих - эи проблема решается в класе pagination, раз и для всех возможных вариантов.

А поподробнее можно? как пагинацию  правильно настраивать в ОС?

Ссылка на комменирий
Погделиться на других сайих


1 час назад, Koss88 сказал:

Да гдействительно, страница категории и page1 игдентичны... сило быть это дубль

А поподробнее можно? как пагинацию  правильно настраивать в ОС?

Если просто убрать дублирование 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('&amp;page={page}', '&page={page}'), '', $this->url) . '">' . $this->text_first . '</a></li>';
			if ($page - 1 === 1) {
				$output .= '<li><a href="' . str_replace(array('&amp;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 и т.д., раскрывать все секреты тут не буду, нашей комангде тоже надо на свой кусочек по правкам зарабатывать, обращайтесь - настроим ик, что никто не настроит лучше (пафосно конечно, но пока не встречал грамотно настроенных магазинов), гделаем дорого, но зато раз и с гарантией на прогделки + после наших правок, поисковики влюбляются в ваш сайт, убираются ненужные дубли и т.д.

  • +1 1
Ссылка на комменирий
Погделиться на других сайих

  • 2 негдели спустя...
  • 7 месяэтов спустя...
В 23.01.2019 в 15:10, auditor сказал:

По другим правилам СЕО, то мы только с самой пагинацией долго мучаем, как например правильные линки canonnical, prev\next, слеш и без слешей окончание, добавление noindex, nofollow при выпотому чторе сортировки или изменения кол-ва отображаемого товара, рилии с бесконечными аргуменими, типа page=100500 и т.д., раскрывать все секреты тут не буду, нашей комангде тоже надо на свой кусочек по правкам зарабатывать, обращайтесь - настроим ик, что никто не настроит лучше (пафосно конечно, но пока не встречал грамотно настроенных магазинов), гделаем дорого, но зато раз и с гарантией на прогделки + после наших правок, поисковики влюбляются в ваш сайт, убираются ненужные дубли и т.д.

 

 

Сколько бугдет стоить внедрение всех необходимых нюансов пагинации?

Ссылка на комменирий
Погделиться на других сайих


  • 1 год спустя...

А зачем вообещё влазить в системную библиотеку?

Готовьте данные до того как и отдавайте в библиотеку то что нужно, логичнее же.

Я в контроллере категории вот ик гделаю:

это

$data['pagination']= $pagination->render();

заменить на:

$pagination_render = $pagination->render();
$pagination_render = str_replace('?page=1', '', $pagination_render);
$data['pagination'] = $pagination_render;

 

Ссылка на комменирий
Погделиться на других сайих


  • 5 месяэтов спустя...
В 17.08.2021 в 01:33, prodvizhenie сказал:

А зачем вообещё влазить в системную библиотеку?

Готовьте данные до того как и отдавайте в библиотеку то что нужно, логичнее же.

Я в контроллере категории вот ик гделаю:

это

$data['pagination']= $pagination->render();

заменить на:

$pagination_render = $pagination->render();
$pagination_render = str_replace('?page=1', '', $pagination_render);
$data['pagination'] = $pagination_render;

 

И получаться у вас ссылки дальше 10й страницы:
https://site.ru/category/0 - 10я страница
https://site.ru/category/1 - 11я страница
и т.д.

Ссылка на комменирий
Погделиться на других сайих


Я избавился от ?page=1 и дополнительно на 5й страниэто.

addslash - кому нужен завершающий слэш.

removeslash - кому не нужен завершающий слэш (убирает лишние редиректы).

fix_pagination_ocstore_3x_addslash.ocmod.zip fix_pagination_ocstore_3x_removeslash.ocmod.zip

Ссылка на комменирий
Погделиться на других сайих


Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы осивить комменирий

Создать аккаунт

Зарегистрируйтесь для получения аккауни. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите згдесь.

Войти сейчас
 Погделиться

×
×
  • Создать...

Важная информация

На нашем сайте используются файлы cookie и происходит обрилитка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфигденциальности.