Поиск и товары

Если в инструкции указана необходимость создания файла, а в вашем шаблоне уже присутствует такой файл, то файл дополняется по правилам составления Дизайн-хуков. Для быстрого включения/выключения дизайн-хука нужно поставить знак решетки # перед его определением в config.ini, пример:

  • #phpshopprice="php/hook/price.hook.php"; - выключен

  • phpshopprice="php/hook/price.hook.php"; - включен

или поставить знак решетки # в массиве перехвата $addHandler в файле хука, пример:

  • $addHandler=array(''''#'''product'=>'product_pricecore_hook'); - выключен

  • $addHandler=array('product'=>'product_pricecore_hook'); - включен

Ключ секции [hook] должен быть уникален, если требуется создать новый хук на тот же класс(ключ), то требуется объединить хуки по правилам составления дизайн-хуков.

Поиск

Изменение сетки вывода товара

В форме вывода результат поиска используется ячейка в 5 товаров, нужно его поменять на вывод в ячейку 4 товаров.

  1. Создать файл /phpshop/templates/имя шаблона/php/hook/phpshopsearch.hook.php с содержанием:

<?php
/**
 * Изменение сетки товаров в поиске
 */
function template_category_select($obj,$row,$rout) {
    
    // Корректировка количества товара на странице поиска
    $obj->num_row=10;
    
    // Задаем сетку
    $obj->cell=4;
}

$addHandler=array
   (
       'category_select' => 'template_category_select'
   );

  1. Создать файл /phpshop/templates/имя шаблона/php/inc/config.ini с содержанием:

Товары

Вывод хлебных крошек в подробном описании товара под ценой

  1. Создать файл /phpshop/templates/имя шаблона/php/hook/uid.hook.php с содержанием:

  1. Создать файл /phpshop/templates/имя шаблона/php/inc/config.ini с содержанием:

  1. Добавить @breadCrumbs@, @catalogCategory@ и @pcatalogId@ в шаблон product/main_product_forma_full.tpl

Добавление в Title подробного описания артикул товара

  1. Создать файл /phpshop/templates/имя шаблона/php/hook/title.hook.php с содержанием:

  1. Создать файл /phpshop/templates/имя шаблона/php/inc/config.ini с содержанием:

Изменение количества товаров на странице спецпредложений

Требуется изменить количество товаров на странице спецпредложений /spec/.

  1. Создать файл /phpshop/templates/имя шаблона/php/hook/spec.hook.php с содержанием:

  1. Создать файл /phpshop/templates/имя шаблона/php/inc/config.ini с содержанием:

Форматирование цены

Требуется отформатировать цену у товара для разделение тысяч (10 200 руб.)

  1. Создать файл /phpshop/templates/имя шаблона/php/hook/priceformat.hook.php с содержанием:

  1. Создать файл /phpshop/templates/имя шаблона/php/inc/config.ini с содержанием:

Форматирование цены элементов новинок и спецпредложений произведем через дизайн хук класса PHPShopProductElements.

  1. Создать файл /phpshop/templates/имя шаблона/php/hook/priceformatelement.hook.php с содержанием:

  1. Создать файл /phpshop/templates/имя шаблона/php/inc/config.ini с содержанием:

Вывод заданной характеристики в закладке

Требуется в подробном описании товара создать дополнительную метку вывода характеристики "Тип загрузки". За вывод подробного описания товара отвечает шаблон /phpshop/templates/имя_шаблона/product/main_product_forma_full.tpl. Для добавления новой закладки следует добавить в него переменную @addseamplysort@. Переменную вывода значение характеристики @addseamplysort@ зададим через дизайн хук класса PHPShopShop.

  1. Создать файл /phpshop/templates/имя шаблона/php/hook/sort.hook.php с содержанием:

Для вывода характеристики используем класс PHPShopSortSearch с параметров в виде имени требуемой характеристики.

  1. Создать файл /phpshop/templates/имя шаблона/php/inc/config.ini с содержанием:

Изменение сортировки товара по дате в спецпредложениях

Требуется изменить сортировку по умолчанию в каталоге товаров на странице /spec/ на вывод товаров в убывающем порядке на основе параметра даты создания/изменения товара.

  1. Создать файл /phpshop/templates/имя шаблона/php/hook/spec.hook.php с содержанием:

  1. Создать файл /phpshop/templates/имя шаблона/php/inc/config.ini с содержанием:

Дописывание в имя товара данных из значений характеристик

Требуется дописать в имя товара значение характеристики Бренд. Имеем имя товара "Машинка для стрижки 5070", требуется выводить "Машинка для стрижки 5070 PHILIPS".

  1. Создать файл /phpshop/templates/имя шаблона/php/hook/name.hook.php с содержанием:

  1. Создать файл /phpshop/templates/имя шаблона/php/inc/config.ini с содержанием:

Для вывода значения Мощность вместо Бренд нужно указать требуемое имя в вызове класса $GLOBALS['PHPShopSortSearch'] = new PHPShopSortSearch('Мощность'); Имя характеристики должно совпадать по базе в точности до буквы.

Добавление шестого товара в ячейке каталога

В карточке каталога можно выставит параметр вывода товара от 1 до 5.

  1. Создать файл /phpshop/templates/имя шаблона/php/hook/shopcore.hook.php с содержанием:

  1. Создать файл /phpshop/templates/имя шаблона/php/inc/config.ini с содержанием:

  1. Создать копию шаблона /phpshop/templates/имя_шаблона/product/main_product_forma_5.tpl под именем main_product_forma_6.tpl

Снятие лимита на вывод всех товаров

Ссылка "Показать все" по умолчанию выводит не более 100 товаров из-за возможности наложения лимитов у хостингов. При наличии мощного хостинга и нужды вывода всех товаров, можно изменить этот лимит.

  1. Создать файл /phpshop/templates/имя шаблона/php/hook/shopcore.hook.php с содержанием:

  1. Создать файл /phpshop/templates/имя шаблона/php/inc/config.ini с содержанием:

Добавление автоматического переноса строк в карточку подробного описания товара

Необходимо заменять переводы строк \n на тег <br> на странице подробного описания.

  1. Создать файл /phpshop/templates/имя шаблона/php/hook/description.hook.php с содержанием:

  1. Создать файл /phpshop/templates/имя шаблона/php/inc/config.ini с содержанием:

  1. В зависимости от задачи, добавить соответствующую новую переменную @productSmallDescription@ в шаблон вывода товара /phpshop/templates/имя_шаблон/product/main_product_forma_full.tpl.

Замена информации о наличии товара на складе

Необходимо заменить надпись при выводе товара "В наличие: кол-во шт." на картинку. Если товар есть в наличии, выводится одна картинка, если товара в наличии нету - выводится другая картинка.

  1. Создать файл /phpshop/templates/имя шаблона/php/hook/items.hook.php и /phpshop/templates/имя шаблона/php/hook/phpshopproductelements.hook.php и с содержанием:

где items_on.gif- путь картинки положительного склада, items_off.gif - отрицательного склада и т.д. Картинки должны лежать в папке /phpshop/templates/имя_шаблона/images/shop/

  1. Создать файл /phpshop/templates/имя шаблона/php/inc/config.ini с содержанием:

  1. В зависимости от задачи, добавить соответствующие новые переменные @newtipIco@, @enabledIco@, @picOn@ в шаблоны вывода товара main_product_forma_х.tpl], где х - значение кол-ва товаров в ряд (1-5).

Добавление второй цены

Требуется вывести вторую цену товара.

  1. Создать файл /phpshop/templates/имя шаблона/php/hook/items.hook.php с содержанием:

  1. Создать файл /phpshop/templates/имя шаблона/php/inc/config.ini с содержанием:

  1. Добавить переменную @productPrice2@ во все требуемые шаблоны вывода товара из папки /phpshop/templates/имя шаблона/product/main_product_forma_XX.tpl

Добавление второй цены в другой валюте

Требуется вывести вторую цену товара в другой валюте рядом с первой.

  1. Создать файл /phpshop/templates/имя шаблона/php/hook/items.hook.php с содержанием:

  1. Создать файл /phpshop/templates/имя шаблона/php/inc/config.ini с содержанием:

  1. Добавить переменную @productPrice2@ во все требуемые шаблоны вывода товара из папки /phpshop/templates/имя шаблона/product/main_product_forma_XX.tpl

  2. Указать ИД требуемой валюты для второй цены в переменной $duo_currency.

Last updated