VirtueMart – интернет-магазин на Joomla. Часть 20. Редактирование шаблона VirtueMart (Продолжение).

Эта статья является продолжением статьи VirtueMart – интернет-магазин на Joomla. Часть 19. Редактирование шаблона VirtueMart (Начало). В ней я расскажу о назначении файлов шаблона VirtueMart в двух из оставшихся четырех папок: common и product_details. Данная информация пригодится всем тем, кому требуется изменить внешний вид интернет-магазина, сделанного на VirtueMart, настроив его под себя.

 

 

Итак, в предыдущей статье мы рассмотрели шаблоны корзины, страницы списка товаров и оформления заказа VirtueMart. Далее остаются шаблоны fly-страницы товара, e-mail-сообщения и некоторых других мест интернет-магазина. Начнем рассмотрение с fly-страницы товара, т.к. все дальнейшее описание будет строиться именно на ней.

Редактирование шаблона VirtueMart. Подпапка product_details.

Папка product_details содержит шаблоны возможных вариантов страницы товара и дополнительных включений в нее.

Шаблоны страницы:

1) flypage.tpl.php – стандартный шаблон страницы товара. Выглядит, как показано на рисунке:

Редактирование шаблона VirtueMart

Данный шаблон задается в настройках VirtueMart и в настройках категории товаров. В этом шаблоне редактируется положение всех общих элементов, но не сами элементы.

2) flypage_images.tpl.php – шаблон, предназначенный для отображения страницы товара с дополнительными изображениями. Кстати сказать, дополнительные изображения добавляются не в настройках товара, а при клике в списке товаров по ссылке в столбце «Медиа».

Редактирование шаблона VirtueMart

3) flypage_lite_pdf.tpl.php – данный шаблон предназначен для удобного конвертирования в PDF. Он не показывает некоторые элементы интернет-магазина, например, кнопку добавления в корзину, и должен использоваться когда VirtueMart работает только как каталог.

Редактирование шаблона VirtueMart

4) flypage_new.tpl.php – просто другой вид страницы. См. рисунок:

Редактирование шаблона VirtueMart

5) flypage-ask.tpl.php – просто другой вид страницы. См. рисунок:

Редактирование шаблона VirtueMart

6) garden_flypage.tpl.php – изображение справа. См. рисунок:

Редактирование шаблона VirtueMart

Хочу заметить, что данные шаблоны первоначально выглядят ужасно и требуют редактирования кода, для создания приятного глазу вида страницы товара. Для редактирования требуются знания html и CSS. Знание PHP здесь не критично.

Примечание

1) Вы смотрите страницу товара в браузере

2) Изменяете шаблон страницы товара в настройках категории

3) Обновляете страницу браузера

4) Видите все тот же старый шаблон.

В чем дело?

Дело в том, что шаблон задается в ссылке на страницу товара. При изменении шаблона в настройках магазина вид ссылки на страницу товара из категории изменяется, т.о. при переходе из категории, мы увидим новый шаблон, но при обновлении страницы ссылка не изменяется, потому видим старый. Будьте внимательны!

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

В папке product_details имеется еще подпапка includes. Рассмотрим содержащиеся в ней файлы:

1) addtocart_advanced_attribute.tpl.php – шаблон отображения свойств и атрибутов товара на странице товара VirtueMart

Редактирование шаблона VirtueMart

2) addtocart_custom_attribute.tpl.php – шаблон отображения свойств, которые вводятся вручную. См. рисунок:

Редактирование шаблона VirtueMart

3) addtocart_drop.tpl.php – отвечает за выпадающий список атрибутов и свойств. Особо тут редактировать нечего.

4) addtocart_form.tpl.php – собственно, форма добавления товара в корзину. См. рисунок

Редактирование шаблона VirtueMart

5) addtocart_list_multi.tpl.php – с этим файлом вообще долгая история. Он отвечает за форму добавления товара в корзину, но применимо:

1) к дочерним товарам (я про это).

2) при отображении кнопки добавления сразу для всех дочерних товаров (включается в Товар –> Показать опции –> Установить «Использовать список "бокс" для зависимых товаров» – > Выбрать «Кнопка "Добавить в корзину" для каждого зависимого товара»). Такая вот мутотень. Вообще говоря, эта опция только для очень искушенных пользователей т.к.:

а) типы товаров уже сами по себе очень сложны для понимания

б) настройки, описанные мной выше нельзя применить сразу ко всем товарам, можно только к каждому отдельно. Конечно, есть SQL-запросы, но все это для продвинутых Web-мастеров.

Редактирование шаблона VirtueMart

6) addtocart_list_single.tpl.php – тоже самое, что и addtocart_list_multi.tpl.php, но: ….. «Одна кнопка "Добавить в корзину"».

Редактирование шаблона VirtueMart

Чтобы было более понятно как добиться такого отображения привожу рисунок с настройками:

Редактирование шаблона VirtueMart

7) quantity_box_general.tpl.php – шаблон формы ввода количества товара перед добавлением в корзину:

Редактирование шаблона VirtueMart

8) quantity_box_radio.tpl.php – шаблон формы ввода количества товара перед добавлением в корзину, при стиле отображения «ratio». Этот стиль отображения количества задается в настройках товара, но как-то плохо работает. Мне не удалось толком настроить отображение через radio, если у кого получится – пишите.

На этом шаблоны fly-страницы товара VirtueMart заканчиваются. Правда некоторые из них еще будут перекликаться с шаблонами из папок common и pages, которые мы рассмотрим далее.

 

Редактирование шаблона VirtueMart. Подпапка common.

Судя по названию в этой подпапке содержаться шаблоны VirtueMart, общие для многих частей интернет-магазина. Сюда  входят аж 18 файлов:

1) availability.tpl.php – шаблон информации о доступности товара:

Редактирование шаблона VirtueMart

2) buttons.tpl.php – шаблон иконок печати, pdf, сообщения:

Редактирование шаблона VirtueMart

3) categoryChildlist.tpl.php – шаблон отображения подкатегорий данной категории на странице товара. Рисунок скажет нагляднее:

Редактирование шаблона VirtueMart

4) couponField.tpl.php – как видно из названия, этот шаблон отвечает за поле ввода купона, которое находится в разделе корзины:

Редактирование шаблона VirtueMart

5) featuredProducts.tpl.php – шаблон рекомендуемых товаров, отображающихся на  странице списка товаров категории (browse)

Редактирование шаблона VirtueMart

6) login_form.tpl.php – шаблон формы авторизации после нажатия ссылки «оформить заказ» в корзине:

Редактирование шаблона VirtueMart

7) minicart.tpl.php – шаблон мини-корзины, которая отображается через главный модуль VirtueMart.

8) moreImages.tpl.php – пустой файл

9) pathway.tpl.php – как понятно из названия это шаблон пути к товару. Отображение этого пути должно быть включено в настройках шаблона VirtueMart.

Редактирование шаблона VirtueMart

10) price.tpl.php – шаблон цены товара. Относится как к странице товара, так и к странице категорий товаров! Именно в нем определяется вид зачеркнутых цен.

11) productsnapshot.tpl.php – шаблон сопутствующих товаров, отображаемых на странице товара. Для того, чтобы они показывались, нужно задать их в настройках товара, вкладка «Сопутствующие товары».

Редактирование шаблона VirtueMart

12) recent.tpl.php – шаблон недавно просмотренных товаров на странице товара:

Редактирование шаблона VirtueMart

13) relatedProducts.tpl.php – данный файл отвечает за тоже, что и файл productsnapshot.tpl.php, только если первый выводит именно единичный товар, то этот выводит список тех файлов. Бррр… Получилось ужасно. Еще раз. Файл productsnapshot.tpl.php это товар, а файл relatedProducts.tpl.php – цикл создающий несколько товаров из productsnapshot.tpl.php. В общем, как-то так. Не знаю зачем было делать все так сложно, но мы имеем именно такую структуру.

14) reviewform.tpl.php – шаблон формы добавления отзыва на странице товара.

15) reviews.tpl.php – шаблон отзывов на странице товара.

16) shopIndex.tpl.php – заголовок главной страницы VirtueMart.

17) voteform.tpl.php – теоретически этот файл должен отвечать за форму голосования за товар на странице товара(там, где звездочки), но у меня не отвечает. Код выглядит как-то по-другому, не так как должен. Честно говоря, не знаю, почему так. Если кто разберется – напишите, буду признателен.

18) votes_allvotes.tpl.php – шаблон отображения голосов за товар на странице списка товаров (browse)

Редактирование шаблона VirtueMart

Следующая статья будет завершающей в истории про редактирование шаблона. В ней я расскажу про оставшиеся папкиorder_emails и pages.