Смена количества товаров на странице (пример Default 2.0)

Пример реализации в Default 2.0

числа ['1','2','3','4'] замените на свои, пример ['8','16','32','64','128']


В list-thumbs.html

{$lazy = $wa->cookie("lazyppp",false)}

{$ppp = $wa->cookie('products_per_page')}

{$page_counts = ['1','2','3','4']}

Выводить по:

<select id="ppp">

{foreach $page_counts as $page_count}

<option value="{$page_count}"{if $page_count == $ppp} selected{/if}>{$page_count}</option>

{/foreach}

<option value="lazy"{if $lazy || empty($ppp)} selected{/if}>Все</option>

</select>


в строчке

<div class="block {if $theme_settings.pagination == 'lazyloading'}lazyloading-paging{else}paging-nav{/if}" data-times="2" data-link-text="[`Load more`]" data-loading-str="[`Loading...`]">

заменяем на

<div class="block {if $theme_settings.pagination == 'lazyloading' && $lazy}lazyloading-paging{else}paging-nav{/if}" data-times="2" data-link-text="[`Load more`]" data-loading-str="[`Loading...`]">


в default.shop.js после $(document).ready(function () {

$('#ppp').change(function(){

if($(this).val()!='lazy'){

$.cookie('products_per_page', $(this).val(), { expires: 30, path: '/'});

$.cookie('lazyppp', '', { expires: 0, path: '/'});

} else {

$.cookie('products_per_page', '', { expires: 0, path: '/'});

$.cookie('lazyppp', '1', { expires: 30, path: '/'});

}

document.location = location.href;

});


2 ответа

  • 2

    Добавлю лишь, что для корректной работы крайне желательно в списке вариантов(['1','2','3','4']) иметь число "30". Так как это кол-во товаров на странице по умолчанию. И нельзя ставить выше 499(поправьте, если это ограничение уже убрали). Чтобы просто изменить кол-во товара, отображаемое по умолчанию, нужно в файле .../wa-apps/shop/lib/config/config.php найти строку с "orders_per_page" и у элемента "table" выставить нужное значение.

  • 1

    Как заменить "Все" по умолчанию на количество товара например 4?

Добавить ответ

Чтобы добавить комментарий, зарегистрируйтесь или войдите