Создание своей темы на Shop-script

Использовать чужие темы интересно, но всегда охото, чего-то своего...

Создание своей темы на Shop-script самостоятельно может быть очень увлекательным (вместе с https://saitsozdanie.ru), давайте разберемся из каких шаблонов основных она должна состоять:

  • index.html - общий макет страницы вашего интернет-магазина.
  • home.html  - если нужно править главную страницу, то вот он шаблон дизайна домашней страницы.
  • category.html - шаблон страниц со списком категорий
  • product.html - тут мы смотрим и правим шаблон страницы просмотра товара
  • cart.html - чтобы продавец был доволен и счастлив, то можем сделать красивый шаблон страницы ”Корзина покупок“.
  • error.html - для разработчиков и для пользователей полезен шаблон страницы с ошибкой, отображающий различные сообщения об ошибках; например, ”404- Страница не найдена“.

 

Так как у интернет-магазина есть разные способы оплаты и доставки, а также удачное оформление заказа или ошибка, то соответственно, создадим для них и такие шаблоны (можно скопировать их из темы дефолтной):

  • checkout.html
  • checkout.contactinfo.html
  • checkout.shipping.html
  • checkout.payment.html
  • checkout.confirmation.html
  • checkout.success.html
  • checkout.error.html

 

1 . Создадим структуру шаблона

Для начала нам нужно создать папку с любым названием, например - my_first_theme

Тут будут:

  • css файлы 
  • js файлы 
  • и обязательный файл манифеста - theme.xml

 

2 . Основные шаблоны

2.1 index.html - это основной шаблон и тут должны быть все основные html-теги страницы: head, body и тд

 {$content} - эта переменная оочень важна, так как именно, из-за нее на сайте будет "динамика" - динамически обновляемый контент страницы!!!

 

2.2 home.html - это шаблон домашней страниц. Тут могут быть основные категории, акционные товары и тд. Часто люди первым делом попадают на главную страницу интернет-магазина и она очень влияет на продажи.

 

2.3 category.html - это шаблон страницы отображения категорий. Тут подтягиваются все данные из описания категории: например, название выведем так  {$category.name|escape} и другие данные можно вывести, это как ассоциативный массив, в данном случае берем колонку "name" 

Чтобы вывести список товаров используем - {$products}

его можно перебрать с помощью Smarty cycle {foreach}...{/foreach}

 

Произвольные товары

Если мы хотим отобразить произвольные товары списком, можно также использовать тег {$products} в любом другом файле, например в product-list.html' и потом включить это на странице так:

{include file='product-list.html'} 

 Тема по-умолчанию использует list-table.html и list-thumbs.html, которые можно инклюдить в любой части страницы.

 

Фильтры товаров

Для этого используется переменная {$filters} - он содержит фильтрацию товаров по цене, наличию и тд

Рекомендовано для начинающих: просто взять часть из шаблона category.html темы ”По умолчанию“, в которой используется {$filters} переменная

 

2.4 product.html - это шаблон страницы категории. Тут также используется тег ё{$product} и можно выводим характеристики или аналогично, название товара {$product.name|escape}.

 Исходный код класса PHP shopProduct находится в файлеwa-apps/shop/lib/classes/shopProduct.class.php.

Нужно добавить корину: Форма для добавления товара в корзину может быть создана с помощью элемента, который должен отправлять данные на сервер с помощью POST на URL, возвращаемый методом {$wa->getUrl('/frontendCart/add')}.

 

Как вывести рекомендуемые товары, артикулы и инфо о наличии товара

В этом случае нужен навык программирования на Smarty и JavaScript , поэтому рекомендуется скопировать данные из стандартного шаблона в product.html и немного подправить.

 

2.5 cart.html - это шаблон вывода корзины: товар, сколько и сумма, а также допродажи - как это делает современный маркетинг. Все данные хранятся в переменной {$cart}.

Рекомендуется также скопировать данный файл из стандартного шаблона, так как много программирования на js и smarty уже сделано для вычисления суммы товара, и тд, позже можно будет доработать.

 

2.6 error.html - это шаблон вывода ошибок , тут есть несколько переменных:

  • $error_message: сообщение об ошибке, сгенерированное интернет-магазином
  • $error_code: код ответа сервера; например, 404 или 500 и 503

 

 

3. Работа с плагинами

Каждая тема может иметь свою поддержку плагинов, одна - поддерживает то или иное, а в другой - уже нет.

Как реализуется? Встраивается код, например, в product.html такого типа:

<!-- подключаемый модуль: 'frontend_product.menu' -->
{* @event frontend_product.%plugin_id%.menu *}
{foreach $frontend_product как $_}{$_.menu}{/foreach}

 Так плагины подключаются к шаблону, это хуки - специальные кусочки кода. Так можно выводить названия брендов и картинок к ним и тд.

 

 

4. JS и CSS

Каждая тема может иметь свои js и css файлы, но может использовать и общие (они находятся тут wa-content/css/ и wa-content/js/).

Как подключить общие стили и скрипты

<link href="/{$wa_url}wa-content/css/wa/wa-1.0.css" rel="stylesheet" type="text/css"> <script type="text/javascript" src="/{$wa_url}wa-content/js/jquery-plugins/jquery.cookie.js"></script>

 , где {$wa_url} - это путь к корню сайта.

 

Как их подключить СВОИ стили и скрипты

<link href="/{$wa_theme_url}style.css" rel="stylesheet" type="text/css">
< type="text/javascript" src="/{$wa_theme_url}script.js"></script>

 , где {$wa_theme_url} - это путь к вашей теме.

 

 

 

5. Файл манифеста

Файл манифеста theme.xml позволяет Shop-script разпознать все файлы шаблона, так как они там указывается определенным образом.

 Важное примечание: Идентификатор вашей темы оформления, указанный в файле, theme.xml не должен совпадать с идентификаторами других тем, установленных в вашем интернет-магазине!

 

 6. Загрузка темы на сервер и инсталляция

Нужно создать TAR.GZ архив, загрузить его на сервер, через ”Загрузить тему“ на бэкэнд-экране ”Витрина магазина“. После загрузки архива выбераем название новой темы в настройках оформления вашего интернет-магазина, чтобы включить ее для витрины и отображения.

 

 

 

Добавить комментарий


Защитный код
Обновить

Вы здесь: Сайтостроение Framework Webasyst Создание своей темы на Shop-script