Jump to content

Ограничить новинки - не более 7 дней


Go to solution Solved by chocolate_moles,

Recommended Posts

Ребят, нужно подсказка! На главной есть вывод новинок, нужно ограничить условием, чтобы показывать только товары, добавленные не более 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 - у меня не стандартные урлы.

Edited by kazak
Link to post
Share on other sites
  • Solution

Ребят, нужно подсказка! На главной есть вывод новинок, нужно ограничить условием, чтобы показывать только товары, добавленные не более 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;
Edited by chocolate_moles
Link to post
Share on other sites

 

в api/Products.php в первой функции по аналогии дописать ....

chocolate_moles, работает, спасибо огромное!

 

Думаю можно перенести топик в готовые решения.

Link to post
Share on other sites
  • 3 years later...
В 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?

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
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.

Loading...
×
×
  • Create New...