Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Пагинация не делит товары по страницам


usleonid2019

Recommended Posts

Всем добрый день.

Столкнулся со следующей проблемой у себя на сайте dp.vostorgvpodarok.ru:

При добавленной пагинации полный список товаров в категориях не делятся по страницам. То есть пагинация работает вроде как, количество товаров в категории подсчитывает, но на каждой из страниц выдаётся полный список товаров в категории, а не 50 товаров из всего количества. Не могу понять, с чем связано и где в коде внести исправления.

Изначально пагинацию убирали с сайта. Сейчас появилась необходимость в ней.

Надіслати
Поділитися на інших сайтах


ищите/проверяйте, что показывают данные переменные

!!! смотреть возможно надо будет и их модифицированные файлы:

здесь - \catalog\controller\product\category.php

$filter_data = array(
'filter_category_id' => $category_id,
'filter_filter'      => $filter,
'sort'               => $sort,
'order'              => $order,
'start'              => ($page - 1) * $limit,
'limit'              => $limit
);

и здесь - \catalog\model\catalog\product.php

 

if (isset($data['start']) || isset($data['limit'])) {
			if ($data['start'] < 0) {
				$data['start'] = 0;
			}

			if ($data['limit'] < 1) {
				$data['limit'] = 20;
			}

			$sql .= " LIMIT " . (int)$data['start'] . "," . (int)$data['limit'];
		}

 

так же может у Вас фильтр может изменять запрос, то тогда в нем надо искать причину.

Надіслати
Поділитися на інших сайтах

Спасибо за совет.

 

Вот этой части кода в файле \catalog\controller\product\category.php:

22 часа назад, vier сказал:

$filter_data = array(
'filter_category_id' => $category_id,
'filter_filter'      => $filter,
'sort'               => $sort,
'order'              => $order,
'start'              => ($page - 1) * $limit,
'limit'              => $limit
);

 

вообще не нахожу.

 

В каком месте он должен стоять?

 

Из похожего есть только вот такой фрагмент:

$filters = array(
                    'filter_category_id'  => $category_id,
                    'filter_sub_category' => true,
                    'filter_price_min'    => $filter_price_min,
                    'filter_price_max'    => $filter_price_max,
                    'filter_tags'         => $filter_tags,
                    'sort'                => $sort,
                    'order'               => $order,
                    'start'               => ($page - 1) * $limit,
                );

 

Змінено користувачем usleonid2019
Надіслати
Поділитися на інших сайтах


3 часа назад, usleonid2019 сказал:

вообще не нахожу.

тогда скорее всего изменяет либо модификатор Вашего фильтра, либо вручную его поменяли.

 

3 часа назад, usleonid2019 сказал:

В каком месте он должен стоять?

это стандартный код.

скачайте архив Вашей версии Опенкарта - https://ocstore.com/downloads, и по указанном пути посмотрите данный файл.

 

и еще примечание. - если у Вас первый Опенкарт, то немного другой код там:

$data = array(
	'filter_category_id' => $category_id,
	'filter_filter'      => $filter, 
	'sort'               => $sort,
	'order'              => $order,
	'start'              => ($page - 1) * $limit,
	'limit'              => $limit
);

 

Надіслати
Поділитися на інших сайтах

Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.