Представляю Вашему внимания достаточно универсальный модуль для VirtueMart, версия
mod_VirtueMart_universal для Joomla 1.5.
Версия модуля 2.1.1 (теперь в общем доступе)Скачать[spoiler title=Новые возможности модуля версии 2.1]
- кнопка "добавить в корзину" на ajax
- визуальный выбор категорий и возможность включать вложенные подкатегории
- различные варианты вывода цены (с учетом налога и скидки)
- многоязычность (в текущем виде только рус\англ), константы вынесены в языковые файлы language\ru-RU\ru-RU.mod_virtuemart_universal.ini
- различные варианты вывода изображения в модуле с эффектами lightbox и\или zoom
[/spoiler]
Почему этот модуль, а не родной от разработчика VirtueMart
Soeren - родной модуль на 6 товаров генерит от 40 запросов в БД, мой же только один SQL запрос
Возможности - показать последние добавленные товары
- показать наиболее продаваемые товары
- показать товары, отмеченные как featured
- показывать случайные товары
- задать количество показываемых товаров
- задать категории для выборки (ID через запятую)
- возможно включения JS подсказок для ссылок в модуле, с использованием либо встроенной библиотеки Mootools либо Jquery.
Внимание - Jquery не включена в модуль, подключение библиотеки в код контролируйте самостоятельно. Если на сайте одновременно подключены обе библиотеки - JS эффект подсказок отрабатывать не будет, покажется стандартный title для ссылки. JS эффекты отрабатываются для элемента title для .mod_vm_universal a, для полноценного управления изучите CSS. Оформление заложено в файле modules\mod_VirtueMart_universal\files\mod_virtuemart_universal.css (см. комментарии)
Дополнительно: - код максимально документирован, смотрите файл modules\mod_VirtueMart_universal\tmpl\default.php для создания собственного шаблона (
внимание - класс mod_vm_universal используется для работы JS tooltip)
[spoiler title=справка по шаблону]
Справка по использованию шаблона:
$item->pname - заголовок (название) товара
$item->link - ссылка на полную карточку товара
$item->pimage - картинка товара, не забываем про полный путь до нее
$item->price - цена товара
$item->currency - валюта (денежная единица)
$item->intro - краткое описание товара, очищенное от HTML тегов, по умолчанию выводится как TITLE для картинки и ссылки "подробнее"
[/spoiler]
- для достижения валидности и уменьшения нагрузки на сервер перед публикацией сайта на production рекомендуется все JS и CSS файлы компоновать в один файл и применять сжатие (работа соответствующих инструментов и азы создания сайтов находятся вне данной темы)
- для достижения валидности необходимо подключить скрипт Jquery и Mootools до вызова скриптов тултипов (всплывающих подсказок), смотри комментарии в helper.php) в блоке HEAD, по умолчанию они выводятся в BODY для работы на 99% хостов без конфликтов
- по умолчанию HTML структура модуля для каждого элемента такова:
[spoiler title=html вывод элементов модуля]
<div class="mod_vm_universal">
<span class="mod_vm_title">Название товара</strong><br />
<a href="link" title="Название товара - краткое описание" class="mod_vm_link">
<img src="linkImg" alt="Название товара - краткое описание" />
</a>
<br />
<a href="link" title="Название товара - краткое описание" class="mod_vm_readmore">Подробнее</a>
<br />
<span class="mod_vm_price">Цена: 1000 рублей</span>
</div>
[/spoiler]
- если у вас VirtueMart используется в качестве каталога (и соответственно нет цен) - решение
ниже[spoiler title=скриншот модуля]
[/spoiler]
Возможные баги:
- возможно все, поскольку я не очень хорошо знаю структуру товаров магазина. Пожелания и предложения по развитию оставляем в комментариях
Тестировал на Joomla 1.5.10-12 и VirtueMart 1.1.3, огромная благоданость
Sulpher за тестирование и общие рекомендации
[spoiler title=Версия модуля 1.2.3]
- Если для товара не назначено изображение выводится картинка по умолчанию components/com_virtuemart/themes/default/images/noimage.gif (спасибо Sulpher)
[/spoiler]
[spoiler title=Версия модуля 1.2.2]
- Добавлена возможность показа иконки для товаров с скидкой
- Добавлена возможность либо автоматически определять ItemID ссылки в меню, ведущей на магазин, либо руками задавать в настройках модуля. Для чего - чтобы при переходе по ссылкам модуля корректно работала активность пункта меню, хлебные крошки и прочие привязки
[/spoiler]
UPD[spoiler title=Версия модуля 1.2.1]
- Добавлена возможность обрезания цены до точки (пример: 48.12000 -> 48)
- Добавлена случайная сортировка товаров (если при кол-ве записей в БД более 10 000 будут проблемы с производительностью - пишите, будут менять алгоритм)
[/spoiler]
[вложение удалено Администратором]