Категории

[FAQ] Часто задаваемые вопросы и ответы

Проблемы и решения

Ошибки и исправления

Общие вопросы

Расширения

Установка и обновление

Модули

Шаблоны

Локализация интерфейса

Коммерческие предложения

Учимся бизнесу

Бизнес книги

Поисковая оптимизация (SEO)

Магазины на ShopOS

Хостинг для ShopOS

Предложения и пожелания

Курилка

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

Кому нужно, чтоб работала навигация по страницам, количество на странице и сортировка по цене/названию после отбора по параметрам - забирайте файлы product_listing.php (заменить в папке modules) и param.page.find.php (заменить в папке плагина).
Нужно поправить еще файл product_listing***.html в шаблоне, для cleanshop подправленный html прицепил, для других принцип тот же:
Найти что-то вроде

<div class="cat-sort">
{#text_sort#}
<a href="{$LINK_sort_name_asc}">{#text_sort_name_asc#}</a> |
<a href="{$LINK_sort_name_desc}">{#text_sort_name_desc#}</a> |
<a href="{$LINK_sort_price_asc}">{#text_sort_price_asc#}</a> |
<a href="{$LINK_sort_price_desc}">{#text_sort_price_desc#}</a>
</div>


заменить на
<div class="cat-sort">
{#text_sort#}
{php}if (strstr($_SERVER['REQUEST_URI'], 'main_page=param_find') == false) { {/php}
<a href="{$LINK_sort_name_asc}">{#text_sort_name_asc#}</a> |
<a href="{$LINK_sort_name_desc}">{#text_sort_name_desc#}</a> |
<a href="{$LINK_sort_price_asc}">{#text_sort_price_asc#}</a> |
<a href="{$LINK_sort_price_desc}">{#text_sort_price_desc#}</a>
{php}}
else {{/php}
<a href="{$LINK_sort_name_asc2}">{#text_sort_name_asc#}</a> |
<a href="{$LINK_sort_name_desc2}">{#text_sort_name_desc#}</a> |
<a href="{$LINK_sort_price_asc2}">{#text_sort_price_asc#}</a> |
<a href="{$LINK_sort_price_desc2}">{#text_sort_price_desc#}</a> 
{php}}{/php}
</div>


еще найти
                              <form id="prod-soft-menu">
<input type="hidden" name="select value" />
<select name="sel-pages" size="1" onchange="top.location.href = this.options.value;">
<option selected value="#">{#text_products_per_page#}</option>
<option value="{$LINK_PAGE}10">10</option>
<option value="{$LINK_PAGE}20">20</option>
<option value="{$LINK_PAGE}50">50</option>
<option value="{$LINK_PAGE}100">100</option>
<option value="{$LINK_PAGE}500">500</option>
        </select>
</form>

заменить
                              <form id="prod-soft-menu">
<input type="hidden" name="select value" />
<select name="sel-pages" size="1" onchange="top.location.href = this.options.value;">
<option selected value="#">{#text_products_per_page#}</option>
{php}if (strstr($_SERVER['REQUEST_URI'], 'main_page=param_find') == false) { {/php}
<option value="{$LINK_PAGE}10">10</option>
<option value="{$LINK_PAGE}20">20</option>
<option value="{$LINK_PAGE}50">50</option>
<option value="{$LINK_PAGE}100">100</option>
<option value="{$LINK_PAGE}500">500</option>
{php}}

else {{/php}
<option value="{$LINK_PAGE2}10">10</option>
<option value="{$LINK_PAGE2}20">20</option>
<option value="{$LINK_PAGE2}50">50</option>
<option value="{$LINK_PAGE2}100">100</option>
<option value="{$LINK_PAGE2}500">500</option>
{php}}{/php}
</select>
</form>

и еще найти
<div class="page-navigation">
<p class="nav">{$NAVIGATION}</p>
<p class="desc">{$NAVIGATION_PAGES}</p>
</div>

заменить на
<div class="page-navigation">
{php}if (strstr($_SERVER['REQUEST_URI'], 'main_page=param_find') == false) { {/php}
<p class="nav">{$NAVIGATION}</p>
{php}}

else {{/php}
<p class="nav">{$NAVIGATION2}</p>
{php}}{/php}
<p class="desc">{$NAVIGATION_PAGES}</p>
</div>

Разделять нужно потому, что меняется способ сортировки и в каталоге - берется урл с GET запросом, по которому пришли на страницу и добавляется к нему значение сортировки в виде "&page=5" и тд. Для сортировки товара отобранного по параметрам сойдет, а вот для остального - хз, вроде работает, если ЧПУ не использовать (можно и подправить php в принципе, но мне пока не нужно, да и гарантии нет, что такой способ для категорий будет нормально работать), а так в каталоге сортирует как и раньше, а в подобранных просто добавляется нужный параметр к урл.
Учел разные варианты клацанья по параметрам типа "товаров на странице" + "сортировать по цене" + "страница 5" и тд, вроде работает, кому интересно - проверьте.

Если не понятно куда что ложить:
product_listing.php - папка modules в корне сайта
param.page.find.php - modules/plugins/param/
product_listing_1_columns_two.html - themes/cleanshop/module/product_listing/


=) Отличная работа! хоть и не пашет сортинг, но не ругается
уже здорово и постранично выдает!


Поправил в плагине, теперь работает и сортировка по названию/цене. Файл param.page.find.php заменить в modules/plugins/param


Респект и уважуха!
Захар, вопрос такой, там осталась в плагине последняя затычка
он не выводит в меню подбора, то что выбрано в параметрах плагина категории ниже по уровню чем Начало
и соответственно нельзя выбрать сортировку по категориям товаров, только по атрибутам и доп. полям, сможешь разобраться?


В принципе для себя я давно решил этот вопрос таким образом - http://justtest.ru
Кнопки под шапкой
Т.е. я переделал его под страницу и в каждом случае явно ему указал из какой директории что сортировать. В случае, если его использовать как есть, то он сортирует в той категории,  в которой находишься на данный момент. В таком случае не совсем целесообразно показывать его на главной странице, лучше отображать только в конечной категории.
Можно конечно немного подправить его и добавить поле с явным выбором категории для сортировки, но мне пока некогда и я все же надеюсь, что после альфа версии от Евгения последует хотя бы бета, ведь вещь очень нужная.


туплю.
не могли бы вы указать точные адреса куда нужно загрузить приложенные 3 файла?
спасибо)
шаблон cleanshop


У меня эта система работает, но только если выключены ЧПУ. если включить ЧПУ, то снова ошибки.:(


извиняюсь, но я не совсем понял какую строку менять в файлу product_listing.php?


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


Источник



Copyright ShopOS