Jump to content
agent008

Сортировка товаров по дате в админке

Recommended Posts

Подскажите решение, модуль, для сортировки товаров в админке по дате добавления.

Share this post


Link to post
Share on other sites
41 минуту назад, bitrixlviv сказал:

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

Share this post


Link to post
Share on other sites

в файле admin\model\catalog\product.php

найти строку

$sql .= " ORDER BY pd.name";

 

заменить на

$sql .= " ORDER BY p.date_added, pd.name";

 

и обновить кеш модификаторов

Share this post


Link to post
Share on other sites

@agent008  тогда решение от 

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

в файле admin\model\catalog\product.php

найти строку

$sql .= " ORDER BY pd.name";

 

заменить на

$sql .= " ORDER BY p.date_added, pd.name";

 

и обновить кеш модификаторов

 

Share this post


Link to post
Share on other sites
В 28.05.2017 в 12:14, AlexDW сказал:

в файле admin\model\catalog\product.php

найти строку

$sql .= " ORDER BY pd.name";

 

заменить на

$sql .= " ORDER BY p.date_added, pd.name";

 

и обновить кеш модификаторов

Что-то даное решение к сожалению не помогло.

Share this post


Link to post
Share on other sites

Share this post


Link to post
Share on other sites

добрый день

подскажите как в админке вывести по дефолту сортировку по дате добавления товара

спасибо

Share this post


Link to post
Share on other sites

В файле

 

"admin/controller/catalog/product.php"

 

На строке 286 (в ocStore 2.3) и далее есть такая информация:

if (isset($this->request->get['sort'])) {
			$sort = $this->request->get['sort'];
		} else {
			$sort = 'pd.name';
		}

Замени на

if (isset($this->request->get['sort'])) {
			$sort = $this->request->get['sort'];
		} else {
			$sort = 'p.date_added'; //Или p.date_modified если нужно по дате последнего изменения
		}

 

Share this post


Link to post
Share on other sites

Ах да, забыл ещё упомянуть в модели...

Файл 'admin/model/catalog/product.php' : 403

$sort_data = array(
			'pd.name',
			'p.model',
			'p.price',
			'p.quantity',
			'p.status',
			'p.sort_order',
			'p.date_added', //Добавить это
			'p.date_modified' // и это
		);

 

Edited by Maximbl4m

Share this post


Link to post
Share on other sites

Спасибо за оперативность

Не вижу никаких изменений

у меня 2.2.0.0 (rs.2)

Share this post


Link to post
Share on other sites

Не понятно, к кому относится данный пост.

Share this post


Link to post
Share on other sites

Отличия есть от версий ?

Share this post


Link to post
Share on other sites
13 часов назад, Tom сказал:

Спасибо, но ошибка.

Notice: Undefined index: date_added in /home/admin/web/site.ru/public_html/system/storage/modification/admin/view/template/catalog/product_list.tpl on line 163

163 cтрока

 

    <td class="text-left"><?php echo $product['date_added']; ?></td>

 

  • +1 1

Share this post


Link to post
Share on other sites

Проверял на чистом Ocstore 2,1-2,3.Поэтому у вас смотреть нужно что не так.Возможно в эти же файлы лезет ещё и другой(ие) модификаторы.

Share this post


Link to post
Share on other sites
4 часа назад, agent008 сказал:

Спасибо, но ошибка.

Notice: Undefined index: date_added in /home/admin/web/site.ru/public_html/system/storage/modification/admin/view/template/catalog/product_list.tpl on line 163

163 cтрока

 

    <td class="text-left"><?php echo $product['date_added']; ?></td>

 

Поправил для 2,3

Products_by_date_2.3.ocmod.xml

  • +1 1

Share this post


Link to post
Share on other sites

Добрый день

как только сделал всё как по инструкции
админка полностью ломается

также необходима сортировка по статусу
все выключенные необходимо вниз

Share this post


Link to post
Share on other sites
В 04.06.2017 в 17:46, Tom сказал:

Поправил для 2,3

Products_by_date_2.3.ocmod.xml

Добрый день.

Если я поменяю 'date_added' на 'date_modified' станет сортировка по дате изменения?

 

Share this post


Link to post
Share on other sites

Попробовал всё, но в 2.1 не получилось у меня. Решил просто таким костылем (после того, как в модель и контроллер добавил p.date_added):

В admin/controller/common/menu.php

Заменил это

$data['product'] = $this->url->link('catalog/product', 'token=' . $this->session->data['token'], 'SSL');

На это

$data['product'] = $this->url->link('catalog/product', 'token=' . $this->session->data['token'] . '&sort=p.date_added&order=DESC', 'SSL');

  • +1 1

Share this post


Link to post
Share on other sites
On 12/24/2019 at 4:36 PM, comers said:

 

$data['product'] = $this->url->link('catalog/product', 'token=' . $this->session->data['token'] . '&sort=p.date_added&order=DESC', 'SSL');

спасибо на 2.1. помогло. 

Share this post


Link to post
Share on other sites

Не помню нюансов. Но видимо нет.

Share this post


Link to post
Share on other sites
В 07.07.2020 в 14:21, Yano4ka сказал:

или вот это для Ocstore 3? Подойдет?

Попробуйте вот этот вариант - у меня работает на 3.0.2.0.

 

Что он делает:

1. Добавляет столбцы Добавлен и Обновлен в админке;

2. В качестве стандартной сортировки делает сортировку по дате добавления;

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

filter_products_by_date.ocmod.xml

Edited by Freimaks

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
You are posting as a guest. If you have an account, please sign in.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Recently Browsing   0 members

    No registered users viewing this page.

×

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.