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

[Решено] Модуль "Последние поступления" - как сделать сортировку по дате?


Recommended Posts

При наполнении нового магазина столкнулся с такой проблемой: товары добавлял в разнобой и теперь необходимо в модуле "Последние поступления" вывести последними другие товары. Думал, что если при редактировании товара изменить "Дату поступления" на более новую, то и в модуле они отсортируются как последние - ДА НЕ ТУТ-ТО БЫЛО! Кеш сайта и браузера чистил, но ничего не помогло - стоят как вкопанные! Я так понял, что отображение товаров в модуле "Последние поступления" происходит не по дате, а по ID товара.

Кто знает, подскажите - КАК СДЕЛАТЬ ДОБАВЛЕНИЕ ТОВАРОВ В ЭТОТ МОДУЛЬ ПО ДАТЕ ПОСТУПЛЕНИЯ, А НЕ ПО ID???

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


$data = array(
			'sort'  => 'p.date_added',
			'order' => 'DESC',
			'start' => 0,
			'limit' => $setting['limit']
		);
$results = $this->model_catalog_product->getProducts($data);

Судя по этому коду вы что-то не так делаете ;)

Товары по умолчанию как видим берутся по дате добавления

 

Если вам нужно чтобы они сортировались по дате поступления (именно она редактируется в админке)

то нужно сделать вот так

data = array(
			'sort'  => 'p.date_available',
			'order' => 'DESC',
			'start' => 0,
			'limit' => $setting['limit']
		);
$results = $this->model_catalog_product->getProducts($data);

Зы: все правки в файле catalog/controller/module/latest.php

  • +1 6
Надіслати
Поділитися на інших сайтах

Изменил код - товары в модуле поменялись, но изменение даты поступления товаров в админке никак не влияет на сортировку товаров в модуле. Кеши чистил, но ничего не происходит... :(

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


РЕШЕНО! Как всегда, БОЛЬШОЕ СПАСИБО afwollis за подсказку!!!

кроме предыдущей подсказки deim в \catalog\model\catalog\product.php добавляем 'p.date_available' в массив:

$sort_data = array(
				'pd.name',
				'p.model',
				'p.quantity',
				'p.price',
				'rating',
				'p.sort_order',
				'p.date_added'
			);	
  • +1 5
Надіслати
Поділитися на інших сайтах


  • 1 month later...
  • 3 months later...

Решил зайти в модуль "Последение" выходит страница с ошибкой, - Fatal error: Class 'Controllermodulelatest' not found in /sait/system/engine/front.php on line 44. Кто нибудь сталкивался с такой ошибкой, как можно убрать ее?

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


Да в админке, причем он был включен и на сайте отображались последние добавленные товары, решил поменять количество отображаемых товаров, зашел, и сразу вышла ошибка. Версия 1.5.3.1 без vqmod. Модуль Simple, CMS блог/новости. Восстановление не помогает.

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


  • 5 months later...

Доброго времени суток, форумчане. Нужна помощь в этом же модуле, только сортировку сделать по "date_modified". Сделал все как написал deim и Dimdimych, только ставил date_modified но не помогло.

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


  • 2 months later...
  • 1 month later...
  • 1 month later...
  • 6 months later...

Уважаемые, а не подскажете кто-нибудь, как регулировать вывод товаров по дате добавления\поступления во всех категориях, а не только в этом модуле?
Что-то не гуглится этот вопрос совсем..(

Обновление:
Все, понял. нужны те же изменения, что и в постах выше, но для файлов /catalog/controller/product/category.php и /catalog/controller/product/manufacturer.php

Спасибо!

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


Уважаемые, а не подскажете кто-нибудь, как регулировать вывод товаров по дате добавления\поступления во всех категориях, а не только в этом модуле?

Что-то не гуглится этот вопрос совсем..(

 

тренируйтесь гуглить ;)

или использовать поиск самого форума

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

  • 1 month later...

 

РЕШЕНО! Как всегда, БОЛЬШОЕ СПАСИБО afwollis за подсказку!!!

кроме предыдущей подсказки deim в \catalog\model\catalog\product.php добавляем 'p.date_available' в массив:

$sort_data = array(
				'pd.name',
				'p.model',
				'p.quantity',
				'p.price',
				'rating',
				'p.sort_order',
				'p.date_added'
			);	

Спасибо, то что надо

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


  • 1 year later...
  • 1 year later...
  • 5 months later...

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

Сейчас новинки выводятся по дате в самом конце, в начале товары которые создал недавно или выполнял в них правки.

Файлы приложил, помогите пожалуйста с решением вопроса

Сделал следующие изменения

в \catalog\model\catalog\product.php

$sort_data = array(
            'pd.name',
            'p.model',
            'p.quantity',
            'p.price',
            'rating',
            'p.sort_order',
            'p.date_available'
        );

и в catalog/controller/module/latest.php

$filter_data = array(
            'sort'  => p.date_available',
            'order' => 'DESC',
            'start' => 0,
            'limit' => $setting['limit']
        );

 

latest.php

product.php

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


Только что, kalyaba27 сказал:

все правильно только


$sort_data = array(
			'pd.name',
			'p.model',
			'p.quantity',
			'p.price',
			'rating',
			'p.sort_order',
			'p.date_added',
			'p.date_available'

 

 );

это убрать? не совсем понял

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


Только что, kalyaba27 сказал:

 


$sort_data = array(
			'pd.name',
			'p.model',
			'p.quantity',
			'p.price',
			'rating',
			'p.sort_order',
добавить
			'p.date_added',
			'p.date_available'

 

Исправил все обновил кэш тоже, результат не изменился

 

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


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

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

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

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

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

Вхід

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

Вхід зараз

×
×
  • Створити...

Important Information

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