kazak Опубликовано 11 апреля, 2018 Жалоба Поделиться Опубликовано 11 апреля, 2018 (изменено) Ребят, нужно подсказка! На главной есть вывод новинок, нужно ограничить условием, чтобы показывать только товары, добавленные не более 7 дней назад. В БД у нас есть поле created, от которого можно отталкиваться. Как это сделать? Вот текущий код: {* Новинки*} {get_new_products var=new_products limit=10} {if $new_products} <h2>Новинки</h2> <!-- Список товаров--> <div class="tiny_products"> {foreach $new_products as $product} <!-- Товар--> <div class="product"> <!-- Фото товара --> {if $product->image} <div class="image"> <a href="{$product->url_full}.html"><img src="{$product->image->filename|resize:200:200}" alt="{$product->name|escape}"/></a> </div> {else} <div class="image"> <a title="{$product->name}" href="{$product->url_full}.html"><img src="design/{$settings->theme|escape}/images/no_image.jpg" alt="{$product->name|escape}"/></a> </div> {/if} <!-- Фото товара (The End) --> <!-- Название товара --> <a data-product="{$product->id}" href="{$product->url_full}.html">{$product->name|escape}</a> <!-- Название товара (The End) --> <!-- Стоимость товара --> <div class="pricemain"> {if $product->variant->compare_price > 0} <span class="akcia">{$product->variant->compare_price|convert} {$currency->sign|escape}</span> <br> {/if} <span>{$product->variant->price|convert} {$currency->sign|escape}</span> </div> <!-- Стоимость товара конец --> </div> <!-- Товар (The End)--> {/foreach} </div> {/if} {*Новинки *} PS: если кто-то будет переделывать по примеру с моего кода, меняйте в моем коде url_full на url и убирайте .html - у меня не стандартные урлы. Изменено 11 апреля, 2018 пользователем kazak Цитата Ссылка на сообщение Поделиться на другие сайты
Maksclub Опубликовано 11 апреля, 2018 Жалоба Поделиться Опубликовано 11 апреля, 2018 (изменено) А если нет товаров или мало спустя 7 дней? Изменено 11 апреля, 2018 пользователем Maksclub Цитата Ссылка на сообщение Поделиться на другие сайты
Решение chocolate_moles Опубликовано 11 апреля, 2018 Решение Жалоба Поделиться Опубликовано 11 апреля, 2018 (изменено) Ребят, нужно подсказка! На главной есть вывод новинок, нужно ограничить условием, чтобы показывать только товары, добавленные не более 7 дней назад. В БД у нас есть поле created, от которого можно отталкиваться. Как это сделать? в api/Products.php в первой функции по аналогии дописать if(isset($filter['week'])) $week_filter = 'AND p.created + interval 7 DAY >= NOW()'; и учть ниже где WHERE 1 $product_id_filter дописать $week_filter в файле view/View.php в функцию public function get_new_products_plugin($params, &$smarty) дописать $params['week'] = true; Изменено 11 апреля, 2018 пользователем chocolate_moles Цитата Ссылка на сообщение Поделиться на другие сайты
kazak Опубликовано 12 апреля, 2018 Автор Жалоба Поделиться Опубликовано 12 апреля, 2018 в api/Products.php в первой функции по аналогии дописать ....chocolate_moles, работает, спасибо огромное! Думаю можно перенести топик в готовые решения. Цитата Ссылка на сообщение Поделиться на другие сайты
dmitry Опубликовано 6 сентября, 2021 Жалоба Поделиться Опубликовано 6 сентября, 2021 В 11.04.2018 в 23:20, chocolate_moles сказал: в api/Products.php в первой функции по аналогии дописать if(isset($filter['week'])) $week_filter = 'AND p.created + interval 7 DAY >= NOW()'; и учть ниже где WHERE 1 $product_id_filter дописать $week_filter в файле view/View.php в функцию public function get_new_products_plugin($params, &$smarty) дописать $params['week'] = true; почему то не выводятся товары, созданные через копирование может ли быть ограничение в get_new_products_plugin? Цитата Ссылка на сообщение Поделиться на другие сайты
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.