Итак, Virtuemart 2 установлен. Тех, кто думает, что откроет сайт и сразу увидит готовый интернет-магазин, я должен огорчить – этого не будет. После установки, Virtuemart 2 требуется еще и настроить. В этой статье я расскажу про самые важные настройки, которые следует сделать после установки.
Содержание
Лирическое отступление
Сейчас, когда среди посетителей сайта встречаются не только новички, но и старожилы, которые изучали еще серию статей по первому Virtuemart’у, становится сложно угодить всем сразу. С одной стороны, я стараюсь писать статьи так, чтобы разобраться мог даже новичок в сайтостроении, с другой стороны, я понимаю, что тем, кто уже перешел с уровня новичка на следующие, более высокие уровни, читать такие статьи становится малоинтересно. Чередовать простые статьи со сложными – плохая идея, т.к. это запутает всех: и новичков и профи. Поэтому я хочу обратиться в первую очередь к старожилам: ждите, интересные и сложные статьи по Virtuemart 2 обязательно будут, но только после того, как я опишу базовые возможности компонента. Без этого нельзя. Нельзя построить большое здание без прочного фундамента. Пройдет некоторое время и серия вырастет, я надеюсь, в нечто большее, чем просто описание Virtuemart 2. А пока предлагаю обсуждать все сложные вопросы в соответствующей ветке форума уроков Joomla. Надеюсь на ваше понимание. А теперь перейдем, собственно, к описанию компонента.
Связывание Virtuemart 2 с пунктом меню Joomla
Первое, и наверное, самое важное, что следует сделать – связать Virtuemart 2 с пунктом меню Joomla. Зачем это нужно? Такова идеология Joomla. Чтобы Joomla могла понимать, как работать с компонентом, нужно привязать его к пункту меню. Привязана должна быть именно главная страница Virtuemart 2. Можно создавать пункты меню и для других страниц, но главная обязательно должна присутствовать.
После того, как вы привяжете Virtuemart 2 к пункту меню, вы сможете управлять модулями Joomla, относительно этого компонента. Что я имею ввиду? Например, у вас есть модуль, который вы хотите показывать только в интернет-магазине и не хотите, чтобы он отображался для остального сайта (это, к примеру, может быть модуль корзины или каталога товаров). Возможна и обратная ситуация: вы имеете модуль который следует показывать везде, кроме интернет-магазина. До привязки Virtuemart 2 к пункту меню Joomla, вы не можете решить эти задачи, после – легко. Достаточно зайти в настройки конкретного модуля и отметить пункты меню, для которых он будет отображаться. Пункт меню, который привязан к главной странице Virtuemart, отвечает за сокрытие/отображение не только на этой конкретной странице, а во всем компоненте в целом. Но хватит теории. Давайте посмотрим, как это делается на практике.
Для того, чтобы привязать Virtuemart 2 к пункту меню Joomla, переходим в менеджер меню, и создаем новый пункт меню:
Далее выбираем тип пункта меню. У нас это будет «Virtuemart – Главная»:
После заполняем дополнительные поля и сохраняем наш пункт меню:
Теперь в пункте меню видим нашу ссылку:
Если по каким-либо причинам вы не хотите показывать на сайте ссылку на главную страницу Virtuemart, то нужно завести отдельное скрытое меню и поместить этот пункт в него. Что значит «скрытое меню»? В админке Joomla меню создается через менеджер меню, а на сайте меню отображается через модуль меню, который также должен быть создан вместе с новым меню. Так вот, если вы создадите меню в админке, но не создадите к нему модуль для отображения этого меню на сайте, то меню будет скрытым. Т.е. оно будет работать как обычное меню, но не будет отображаться на сайте. Создание скрытого меню – отличный прием, когда связать с меню что-то необходимо, а показывать на сайте это не нужно. Как раз наш случай.
После того, как Virtuemart 2 связан с пунктом меню Joomla, перейдем к другим правкам.
Перевод заголовков модулей Virtuemart 2
Эта правка достаточно проста и очевидна. При установке пакета модулей Virtuemart 2, эти модули автоматически публикуются. Поскольку заголовки модулей хранятся не в языковых файлах, а в базе данных, то по умолчанию они отображаются на английском языке:
Для того, чтобы перевести заголовки модулей, заходим по очереди в каждый из них в менеджере модулей и исправляем заголовки вручную:
Вот примерный перевод заголовков:
- VM - Shopping cart = Корзина
- VM - Best Sales = Хиты продаж
- VM - Search in Shop = Поиск по магазину
- VM - Featured products = Рекомендуемые товары
- VM - Currencies Selector = Выбор валюты
- VM - Manufacturer = Производители
- VM - Category = Категории товаров
Создание папки для хранения файлов и счетов
После установки и локализации Virtuemart 2, если вы зайдете в настройки этого компонента, то увидите такое предупреждение:
«Предупреждение, Безопасный путь, по соображениям безопасности, создание папки по URL не доступно, создайте также папки для счетов внутри для хранения данных. Рекомендуемый путь для вашей системы»
Для того, чтобы избавиться от этого назойливого предупреждения, а также внять ему, создадим папку для счетов и других файлов, которая будет недоступна для простых пользователей. «Недоступность» достигается очень просто: Virtuemart 2 предлагает создать папку вне файловой структуры сайта. Рекомендуемый путь определяется автоматически и указывается в предупреждении. Таким образом, для решения этой проблемы:
- Создаем папку «vmfiles» там, где предложено;
- Копируем путь к этой папки из предупреждений
- Переходим в Virtuemart 2 –> Настройки –> Вкладка «Шаблоны» –> Блок «Настройки файлов» и вставляем в опцию «Безопасный путь» то, что скопировали. Если все сделано правильно, предупреждение больше не появится.
Хочу заметить, что если вы делаете сайт на локальном сервере, то при переносе на хостинг безопасный путь нужно будет исправить.
Заполнение информации о магазине
Следующий важный шаг – заполнение информации о магазине. Чтобы ввести все данные о магазине, переходим в Virtuemart –> Магазин. Здесь появляется анкета, многие данные из которой будут видеть пользователи на том или ином этапе работы с магазином. Здесь вводим название и описание магазина, логотип, выбираем допустимые валюты и валюту по умолчанию, указываем минимальную сумму заказа и различную правовую информацию.
Во вкладке «Дополнительная информация» вводим информацию о продавце. Контакты, телефоны, и.т.д. Поля, заполняемые здесь, редактируются через менеджер полей, заполняемых пользователем.
Вот и всё. Есть множество других настроек в глобальной конфигурации Virtuemart 2, но они довольно просты и нет смысла описывать их отдельно. Остальное будет появляться по ходу пьесы. Далее мы добавим способы оплаты и доставки, разберемся с полями, заполняемыми пользователями, создадим производителей, настроим налоговую политику, после чего можно будет приступать к наполнению. Об этом и не только вы узнаете из следующих статей серии. Подписывайтесь на рассылку. Будет интересно!
С нетерпением жду продолжения.
Хотелось бы еще по оплатам (робокасса, СБ, Почта России и т.п.), если возможно...
PS: ваши статьи лучшие!!!
Я кстати тоже блог по джумла веду (lawans.ru) так что милости прошу.
Передо мной вопрос стоит, начинать магазин на ВМ2, в котором я пока мало что понял, или организовать все на старой версии, изученной по вашим статьям, и затем, после изучения всех новшеств, мигрировать?
Configuration > Site > Layout > Select the theme for your Shop
Я имел ввиду оформление вида модуля корзины, где написано Ваша Корзина пуста и т.д. Предугадываю, что теперь это всё должно находиться в общем шаблоне.
В итоге, вопрос оформления разных элементов упирается в текущие CSS. В которых надо искать соответствующие элементы.
Вопрос снят. Затормозил :(
не сверху не сбоку что сделать чтобы оно появилось
При наведении мышки на название производителя в модуле VM - Manufacturer (в главном меню сайта) цвет названия производителя изменяется на белый и его совершенно не видно на фоне меню. Как сделать так, чтобы подсветка производителя была, как в модуле меню VM - Category?
После перехода на страницу Корзины (в безопасный режим https) через модуль Корзины
страница выглядит как будто к ней не цепляется шаблон сайта, как в текстовом редакторе просто всё строчками идет. где это можно отредактировать???
а это ничего что заказ не в защищенном соединение будет???? в принципе отключила сео родные... стала нормально отображаться... возникает вопрос что делать в таком случае с чпу??? подскажите, пожалуйста.
а каким образом лучше работу организовывать именно в плане безопасности? я так понимаю данную опцию не следует выключать.
VM открывается если ввести адрес http://localhost/optjoomla/index.php/component/virtuemart , тогда открывается демо магазин, но как прописать к нему путь не могу найти
Попробую объяснить. Я так понимаю Вы создаете не то меню.
Чтобы связать VM2.. и Joomla2.5.., нужно создать пункт меню Virtuemart-Главная, и тогда при нажатии на него пойдет соединение со страницей Z:/home/localhost/www/ваш сайт/index.php. Эта страница и будет главной на сайте под управлением связки Joomla2.5..+ VM2.. .
У меня в админке, как создал пункт меню "главная" в графе "ссвлка" стоит index.php?option=com_virtuemart&view=virtuemart
Спасибо за шикарный цикл статей по Virtuemart 2.
Столкнулся с тем что не работает выбор валюты. В частности в блоке VM - Currencies Selector выдается сообщение
Warning: Invalid argument supplied for foreach() in /libraries/joomla/html/html/select.php on line 504
Предупреждение, Безопасный путь, по соображениям безопасности, создание папки по URL не доступно, создайте также папки для счетов внутри для хранения данных. Рекомендуемый путь для вашей системы /home/user421/www/vmfiles
Затем я захожу в панель управления хостингом - далее в менеджер файлов - далее нахожу папку www - и там создаю папку vmfiles
Потом копирую путь из предупреждений и вставляю как описано в статье.
Он мне выдает следующее:
Info: Corrected safe path added missing /
Info: Путь для создания счетов
Большое спасибо Wedal!!! Разобрался))
Не могу выбрать помогите. Уже дважды удалял магазин и дважды систему
Понимаю что где-то не по теме, но всеже может поможете решить эту проблемку.
У меня есть такой вопрос. В шаблоне Leosport,после обновления VM до 2.0.18а исчез из показа Lof VM Slideshow Module, причем в Менеджере модулей, настройки не изменились.И вот ещё,если установить язык сайта по умолчанию RU то магазин покрывается сведениями об ошибках.
Подскажите, плиз, может кто сталкивался:
J 2.5.8+VM 2.018a на localhost, после установки и основных настроек при попытке включения любого модуля VM выдает ошибку:
Fatal error: Call to undefined method VmConfig::loadjlang() in X:\home\localhost\www\style-store\modules\mod_virtuemart_category\mod_virtuemart_category.php on line 28
Что он хочет от меня? Заранее благодарю.
Установил Модуль Sj Vm Slideshow III.Все работает хорошо, но висит сообщение -
vmError: getProductPrices no object given query time.Как от него избавиться? На форумах ничего не нашел."Думал-думал,ничего не надумал..."
Помогите!
Пробоему с VMFILES решил только добавив строчку * /var/www/clients/client_/web_/vmfiles: * (без знаков умножить) к уже имеющимся в строчке * PHP open_basedir * в панеле ISPConfig (ибо к моему несчастью я сам себе хостер :( ) . Теперь чешу затылок, не опрометчиво-ли я поступил, открыв для PHP директорию выше максимально допустимой? (ппредставляю ухмылки старых волков админов) - но все-равно спасибо если отпишите или нет ).
Большое спасибо за Ваши статьи, я прочитал весь Ваш блог и с нетерпением жду новых статей!
При создании одного сайта появилась такая проблема: при включенном компоненте sh404SEF при нажатии на кнопку "Перейти в корзину" стандартного модуля корзины Virtuemsrt, открывается главная страница сайта. При том видно, что ссылка на кнопке действительно ведет на главную. В то же время, если отключить sh404SEF, то ссылка будет вести на страницу корзины. А если отключить SEO в настройках Virtuemert, при этом активировав sh404SEF, то ссылка опять же будет рабочей, но тогда (т.к. мы отключаем SEO), все ссылки на товары, категории и прочее, относящееся к Virtuemert, будут выглядеть в "машинном", а не чпу-шном варианте, что тоже не приемлемо. Пока отключил SEO, но это временное решение.
Виталий, пожалуйста, помогите разобраться, в чем может быть проблема и где "копать"
Заранее благодарен!
Но перенаправление, как я понимаю, работает когда включен родной SEF joomla, без подключения sh404SEF. А мне как раз необходимо, чтобы sh404SEF был включен и автоматически генерил SEF ссылки. Но все равно, спасибо, Ваша подсказка задала некий вектор, который привел к результату, который как-то решает проблему. И вот, что я сделал: в настройках joomla я включил системный роутер (хотя, при включеном sh404SEF этого делать не советуют), а в настройках sh404SEF (контрольная панель - конфигурация - компонент sh404SEF - вкладка "по компоненту") в настройках VM выставил "использовать системный роутер joomla". Теперь получается, что одновременно работают 2 роутера, но VM обрабатывает только роутер joomla. Корзина отображается. В общем, какое-никакое решение. Но, все-таки хотелось бы узнать, как устранить проблему работы sh404SEF, чтобы пользоваться только одним роутером на сайте.
Подскажите, пожалуйста, по статусам заказов. Если по всем более менее понятно, то как корректно перевести "Confirmed by shopper"?
Надо же так тупо сделать оформление заказа.
Wedal, дорогой, подскажите, как настроить, чтобы стран в помине не было ни в выборе, ни в заполнении. Может по умолчанию как-то (но при этом доставка что бы работала) плиз!
p.s. это надо же выпустить такой продукт и потом напильником из тратора делать танк...
но перед этим ее нужно по умолчанию поставить.. в БД
не подскажите как или каким запросом?
В меню настройки магазина только "дополнительная информация", нет выбора валюты.
VM2 менял, переустанавливал, обновлял, в БД лазил,ru-ru создал, единички поставил
Также есть вариант, попробуйте отключить в списке валют все валюты, кроме нужной.
В итоге при регистрации пользователя в выпадающем списке страна только одна (Russian Federation), как и нужно. А вот при выборе региона присутствуют все, а не только два выбранных. Мне-же нужно, чтобы пользователь мог выбрать только активные.
Как с это реализовать и в чём подвох?
Спасибо Вам за информацию, для меня оказалась очень полезна, читаю и делаю пошагово.
Но вот вопрос: хочу убрать с главной страницы магазина категории, чтобы остались только рекомендованные товары и новинки (потому что привязала главную странцу магазина к главной странице сайта, там категории ни к чему, тем более, я вывела их слева еще раз).
В настройках магазина во вкладке "шаблоны" убираю галочки "показывать категории", но на сайте ничего не меняется. почему? Что делать?
Спасибо.
Добрый день Наталья!
А попробуйте такой вариант, как у меня www.domlama.ru на главной - Ваш вариант, а заходишь в магазин-склад - вариант VM2
Info: Your Virtuemart installation contains an error: No user as marked as vendor. Please fix this in your phpMyAdmin and set #__virtuemart_vmusers.user_is_vendor = 1 and #__virtuemart_vmusers.virtuemart_vendor_id = 1 to one of your administrator users. Please update all users to be associated with virtuemart_vendor_id 1.
Что делать?
Bosiak, у Вас ни один из пользователей не назначен как продавец, т.е владелец магазина, там есть подсказка, зайдите в phpMyAdmin и установите "единичку": virtuemart_vmusers.user_is_vendor = 1
у меня там user_is_vendor
я ему дописую = 1 и нечего не происходит.
Может что-то не так делаю?
1) В таблице virtuemart_vmusers , в колонке user_is_vendor установить 1 для строчки с ID пользователя равным ID администратора.
2) В таблице virtuemart_vmusers , в колонке virtuemart_vendor_id установить 1 для строчки с ID пользователя равным ID администратора.
Уменя вот тоже вкладки Продавец физически нету. Нажимаешь на Магазин входишь в "Дополнительная информация" и там информация о продавце, т.е. одна вкладка. Что это? Кто знает?
Также было и у меня, искал в Инете, в чем проблема, - не нашёл. Сохранил данные по товару и переустановил ВМ из другого источника
Нашел я вот решение:
Чтобы у вас появилась возможность выбора настроек магазина если она отсутствует как на скрине выше необходимо зайти в phpmyadmin таблица #_virtuemart_vmusers и у вашего пользователя в данном случае Admin скорее всего в поле user_is_vendor поставить 1 вместо 0.
Я назначал продавца, юзера - продавцом и т.д., но в моем случае не помогало. Урезанная копия или ошибка при установке.
Как сохранить товар в корзине после выхода с аккаунта или закрытия браузера???
Спасибо!
wishlist для Virtuemart 2 - это платное расширение, может можно создать таблицу в базе которая будет хранить товар?
А Почему главная страница Virtuemart обязательно должна присутствовать ?
Не могу сделать именно первичные настройки Virtuemart (версия 2.0.24, Joomla 2.5.6
Инфо о продавце не сохраняется - постоянно требует заполнить все необходимые поля - а какие именно? Ничего не помечено обязательынм Все шаги, описанные Вами, успешно реализованы, но валюта не определяется, ибо инфа о продавце не сохраняется... Я уже в отчаянии! Подскажите, что делать?
Установил шаблон Jomla (версия 2.5.16)вместе с Virtuemart (версия 2.0.24c), все установилось и обновилось хорошо, но при настройке стала вылезать ошибка:
Your Virtuemart installation contains an error: No user as marked as vendor. Please fix this in your phpMyAdmin and set #__virtuemart_vmusers.user_is_vendor = 1 and #__virtuemart_vmusers.virtuemart_vendor_id = 1 to one of your administrator users. Please update all users to be associated with virtuemart_vendor_id 1.
Пробовал:
- в БД в таблице virtuemart_vmusers переименовать указанные virtuemart_vendor_id и user_is_vendor в virtuemart_vendor_id = 1 и user_is_vendor = 1, соответственно
- пробовал переименовывать указанные virtuemart_vendor_id и user_is_vendor в virtuemart_vendor_id = 42 и user_is_vendor = 42 (по ID единственного пользователя Joomla)
- пробовал переименовать virtuemart_vendor_id и user_is_vendor в virtuemart_vendor_id = 0 и user_is_vendor = 0 (как предлагалось выше, в одном из комментариев)
- пробовал менять ID единственного пользователя (суперадминистратора, соответственно) в БД с "42" на "1"
Ничего не помогает! Выручайте, других источников по этой проблеме не нашел...
Заранее спасибо за оперативность.
Столкнулся с подобной ошибкой, решил прорблему следующим образом, назначил в меню Покупатели, супер юзера, продавцом,(в правом верхнем углу зеленая кнопичка) потом кликнул на продавца( откроется окно с контактной информацией) там почти в самом верху будет написано ID покупателя а в окне набор цифр и букв, я там все стер и поставил 1, ошибка у меня пропала. В базы данных я не лез.
Идея: разделить основной сайт от VM, оставить связь только через пункт меню "Магазин".
Беда: Никак не получается привязать главную страницу VM к меню. Вылетают проблемы с алиасами или 404. Магазин доступен по адресу: http://test.soft-sib.ru/index.php/ru/shop
Может быть проблема из-за того что используются разные шаблоны?
У меня в пункте Изображение при добавлении товара имеются вот эти две строки:
/var/www/vhosts/мойсайт/images/stories/virtuemart/product/ :: Недоступно
/var/www/vhosts/мойсайт/images/stories/virtuemart/product/resized/ :: Недоступно
В чем может быть проблема?
Вопрос такой есть сайт на joomla 2.5. Установил Виртуемарт...
Создал категорию добавил товар. В скрытом меню сделал пункт со ссылкой на страницу категории.
Все хорошо, но модули джумлы не отображаются ни на странице категории, ни на странице непосредственно товара.
Прочитал Вашу статью и в этом же скрытом меню добавил пункт со ссылкой на главную ВМ.
В этом случае, если пройти поссылке главная ВМ открывается и модули джумлы отображаются, но на странице категории и карточке товара вс равно нет.
В чем моя ошибка? Спасибо
Если же вы хотите настроить модуль корзины Virtuemart так, чтобы он выглядел картинкой, это немного сложнее. Нужно переопределить макет модуля в используемый вами шаблон Joomla, а затем внести изменения в макет так, чтобы получить желаемый вид. Подробнее про макеты и настройку шаблона Virtuemart читайте в этой статье:
https://wedal.ru/rasshireniya-joomla/nastrojka-shablona-virtuemart-3.html
Где исправить, подскажите?
Выводит ссылку с русским текстом "производитель" ((((
/catalog/производитель/andreani-group
а должно быть так:/catalog/manufacturer/andreani-group
1) Русский язык - это однозначно языковая константа. В коде VM нет русского. Есть только в файлах локализации. Можно зайти в Расширения -> Языки -> Переопределение констант, выбрать область системы (только не уверен, что эта константа будет в области для фронтенда, может быть и в области админки), и там попробовать создать новое переопределение, найдя подходящую константу по тексту "производитель".
2) Вы можете создать пункты меню для каждого производителя, тогда в URL будет использовать их алиасы.