Убираем SEO суффикс из карточки товара virtuemart 2, 3
По умолчанию при переходе в товар ко всем ссылкам добавляется Seo-суффикс detail
Если просто убрать его в Virtuemart->Настройки->SEO, то карточка товара перестанет открываться
Чтобы все работало нужно внести несколько правок в файл роутера
\components\com_virtuemart\router.php
После этого все должно работать правильно.
Проверил – все работает! Спасибо!
На Virtuemart 2.6 данное решение, к сожалению, не работает.
А что делать с редиректом?
Я так понимаю, что после этих манипуляций нужно как-то настроить 301 редирект для всех товаров с -detail на новый адрес?
Если старый адрес имел вид
то с редиректом должен помочь код (добавьте в файл .htaccess в корне сайта)
Спасибо вам огромное! Цены вам нет. Киви кошелек 89307103555 актуален?
Пожалуйста
Да, кошелек актуален 🙂
На VM 3 не сработало – что делать?
Обновил VM, обновил joomla, убрал -detail, залил ваш router – все работает и товары сохраняются и суффикс исчез.
При установки VM aio получил
Предупреждение JFolder::create: Не удалось создать каталогPath:
Это критично и что это такое?
создайте также папки для счетов внутри для хранения данных. Рекомендуемый путь для вашей системы /home/сайт/vmfiles/
Это где и как лучше создавать – в корне ни к чему не приводит
Где то читал на вашем форуме как обновлять VM, там в конце написано зайти в компоненты – VM aio и обновить таблицы – у меня при клике на VM aio выдает 404
у меня при клике на VM aio выдает 404
То есть компонент не найден, хотя установился успешно
После обновления Jommla с 3.4.2 до 3.4.3. – в super user зайти не получается – может так только у меня
Источник статьи: http://virtuemart.su/forums/topic/ubiraem-seo-suffiks-iz-kartochki-tovara-virtuemart-2-3/
Убираем SEO суффикс из карточки товара virtuemart 2, 3
Не знаю, куда правильно писать. Я новичок в этом деле. Зачем вообще нужен этот суффикс? Для чего? Насколько он важен? Я сейчас отлаживаю сайт, владелец самостоятельно поставил суффикс -kupit. Разве это правильно?
Добрый день а как удалить (убрать) ID товара? сейчас catalog/25-dh-ipc-hfw5231ep-z12-model , а как сделать catalog/dh-ipc-hfw5231ep-z12-model . спасибо заранее!!
В Virtuemart > Настройки >SEO отключите опцию Использовать ID продуктов и категорий.
Здравствуйте, скажите пожалуйста, в этом посте, в первом сообщении вы писали, что если отключить “Virtuemart->Настройки->SEO – Суффикс – detal” то могут не работать карточки товаров. Я отключил это дополнение к url и карточки товаров работают, это потому что я использую virtue mart 3? Все что сбилось – это гиперсылки в описании (т.к изменился путь к ним). Ничего страшного что я отключил это? Критических ошибок не должно быть потом? все будет без багов работать?
Для vm3 все будет работать нормально.
Приветствую.
А если сайт проиндексирован полностью, есть ли смысл убирать суффикс -detail?
Если да, то как настроить редирект на новые ссылки товаров без суффикса, чтобы не просесть в выдаче?
Источник статьи: http://virtuemart.su/forums/topic/ubiraem-seo-suffiks-iz-kartochki-tovara-virtuemart-2-3/page/2/
Настройка шаблона Virtuemart 3
У вас есть интернет-магазин на Joomla 3 + Virtuemart 3, и вы хотите изменить или отредактировать какой-то блок на страницах магазина? В этой статье я расскажу, как это сделать.
В данной статье описаны все макеты страниц Virtuemart 3, а также приведены их изображения для более удобного ориентирования по ним.
Информация из данной статьи на 95% применима и для Virtuemart 2.
Шесть лет назад (Боже, неужели прошло 6 лет !?) я уже писал мега-статью с описанием всех макетов Virtuemart. Та статья была разбита на 3 части. Вы и сейчас сможете найти ее в серии статей Virtuemart – интернет-магазин на Joomla. В той статье были описаны макеты Virtuemart 1.1.x для Joomla 1.5.
Зачем нужна новая статья? Дело в том, что макеты в Virtuemart 2 и Virtuemart 3 совершенно другие. Сам я, по роду деятельности, так часто делаю интернет-магазины на Virtuemart, что выучил почти все макеты наизусть. Но если вы не зашли столь же далеко, то информация о том, где какая страница Virtuemart 3 редактируется, может быть очень полезной при создании сайта на Joomla.
В этот раз я не буду разбирать описание всех макетов на несколько статей. Вся выжимка по макетам с изображениями представлена для вас в этой мега-статье.
Оглавление
Основные макеты Virtuemart 3
Подмакеты Virtuemart 3 (блоки, которые могут встречаться на разных страницах)
Переопределение макетов и подмакетов Virtuemart 3. Важно!
Не вносите изменения непосредственно в макеты Virtuemart, которые находятся в директории components/com_virtuemart/views/.Такие изменения будут потеряны при первом же обновлении Virtuemart. Чтобы не потерять изменения, необходимо вносить их в макеты, которые переопределены в используемый вами шаблон Joomla.
Общее правило переопределения макетов
Чтобы переопределить макет в шаблон Joomla, скопируйте файл:
components/com_virtuemart/views/КАТЕГОРИЯ_МАКЕТА/ tmpl/НАЗВАНИЕ_МАКЕТА.php
templates/ВАШ_ШАБЛОН/html/com_virtuemart/КАТЕГОРИЯ_МАКЕТА/
Пример переопределения макетов:
Для переопределения макета карточки товара нужно скопировать файл:
components/com_virtuemart/views/productdetails/ tmpl/default.php
templates/ВАШ_ШАБЛОН/html/com_virtuemart/productdetails/
Общее правило переопределения подмакетов
Чтобы переопределить подмакет в шаблон Joomla, скопируйте файл:
components/com_virtuemart/sublayouts/НАЗВАНИЕ_МАКЕТА.php
templates/ВАШ_ШАБЛОН/html/com_virtuemart/sublayouts/
Пример переопределения подмакетов:
Для переопределения подмакета цен товара нужно скопировать файл:
components/com_virtuemart/sublayouts / prices.php
templates/ВАШ_ШАБЛОН/html/com_virtuemart/sublayouts/
Основные макеты Virtuemart 3. Главная страница (virtuemart)
components/com_virtuemart/views/virtuemart/default.php – основной макет главной страницы. Содержит описание магазина, список категорий верхнего уровня вложенности, и список товаров в зависимости от настроек в админке.
components/com_virtuemart/views/virtuemart/feed.php – макет RSS-фида товаров VM.
components/com_virtuemart/views/virtuemart/off_line.php – макет страницы выключенного магазина.
Основные макеты Virtuemart 3. Страница категории товаров (category)
components/com_virtuemart/views/category/default.php – основной макет категории товаров Virtuemart. Содержит описание категории, список дочерних категорий, список товаров категории.
components/com_virtuemart/views/category/categories.php – макет списка дочерних категорий заданной категории.
Основные макеты Virtuemart 3. Страница товара (productdetails)
components/com_virtuemart/views/productdetails/default.php – основной макет страницы товара. Содержит всю информацию о товаре, а также вызывает большинство макетов страницы товара, описанных ниже.
components/com_virtuemart/views/productdetails/default_images.php –макет основного изображения на странице текущего товара Virtuemart. Содержит также скрипты, обрабатывающие основное и дополнительные изображения.
components/com_virtuemart/views/productdetails/default_images_additional.php – макет дополнительных изображений текущего товара Virtuemart.
components/com_virtuemart/views/productdetails/default_manufacturer.php – макет содержит блок со списком производителей текущего товара Virtuemart.
components/com_virtuemart/views/productdetails/default_pdf.php –макет отображения текущего товара в формате PDF.
components/com_virtuemart/views/productdetails/default_reviews.php – макет отзывов о текущем товаре Virtuemart.
components/com_virtuemart/views/productdetails/default_showcategory.php – макет, показывающий дочерние категории той категории, в которой содержится текущий товар на странице этого товара.
components/com_virtuemart/views/productdetails/mail_html_notify.php – макет уведомления покупателей, которые подписались на ожидание информации о поступлении товара, в формате HTML.
components/com_virtuemart/views/productdetails/mail_raw_notify.php php – макет уведомления покупателей, которые подписались на ожидание информации о поступлении товара, в формате RAW.
components/com_virtuemart/views/productdetails/notify.php – макет формы подписки на уведомления о поступлении товара. Показывается в случае, когда товара нет в наличии и выставлены соответствующие настройки в конфигурации Virtuemart.
Основные макеты Virtuemart 3. Корзина товаров (cart)
Макеты корзины сложные. Я советую заниматься их редактированием только тем, кто может хорошо читать код PHP и HTML. Для всех остальных проще купить готовое расширение одностраничного оформления заказа Virtuemart.
components/com_virtuemart/views/cart/default.php – основной макет корзины. Содержит всю информацию, отображающуюся в корзине, а также вызывает большинство макетов корзины, описанных ниже.
components/com_virtuemart/views/cart/default_address.php – макет блока адресов «Кому»/ «Куда», которые показаны над списком товаров в корзине.
components/com_virtuemart/views/cart/default_cartfields.php – макет, содержащий поля «Примечания и специальные запросы», согласие с условием обслуживания, а также дополнительные поля, заполняемые пользователем в корзине.
components/com_virtuemart/views/cart/default_coupon.php – макет формы добавления купона в корзине.
components/com_virtuemart/views/cart/default_pricelist.php – макет таблицы товаров в корзине.
components/com_virtuemart/views/cart/default_shopperform.php – макет изменения покупателя заказа. Используется только если в настройках VM на вкладке «Оформление заказа» активирована соответствующая опция.
components/com_virtuemart/views/cart/mini_cart.php – на текущий момент нигде не используется.
components/com_virtuemart/views/cart/order_done.php – макет страницы оформленного заказа, на которую попадает покупатель после подтверждения заказа/оплаты.
components/com_virtuemart/views/cart/padded.php – макет всплывающего окна «Товар добавлен в корзину».
components/com_virtuemart/views/cart/perror.php – макет страницы всплывающего окна с ошибкой о невозможности добавления в корзину. Такое бывает в некоторых случаях.
components/com_virtuemart/views/cart/select_payment.php – макет способов оплаты в корзине.
components/com_virtuemart/views/cart/select_shipment.php – макет способов доставки в корзине.
Основные макеты Virtuemart 3. Страница производителя (manufacturer)
components/com_virtuemart/views/manufacturer/default.php – основной макет страницы производителя. Содержит список производителей магазина. Этот макет будет показан для типа пункта меню Joomla Virtuemart –> Производители.
components/com_virtuemart/views/manufacturer/default.php – макет страницы отдельного производителя. Содержит изображение производителя, описание производителя и ссылку на товары производителя. Этот макет будет показан для типа пункта меню Joomla Virtuemart –> Производитель.
Вы можете спросить: «А где же макет списка товаров производителей?». Его нет. Роль данного макета выполняет макет категории. По-моему, это очень спорное решение. Отличие URL товаров заданного производителя от товаров категории только в том, что в первом случае передается параметр virtuemart_manufacturer_id вместо ID категории.
Основные макеты Virtuemart 3. Выписанный счет/Страница просмотра информации о заказе (invoice)
Данные макеты очень похожи на макеты из директории orders. Не путайте их! Инвойсы служат для отображения информации о сделанном заказе в браузере. Это та страница, где нужно ввести номер заказа и секретный ключ, та страница, что задействована в письме и может использоваться для его редактирования: Просмотр письма с подтверждением заказа по ссылке в браузере. Также инвойс генерирует выписанный счет в PDF. Ордеры же используются в личном кабинете для отображения заказов.
components/com_virtuemart/views/invoice/invoice.php – основной макет счета. Содержит параметры и позиции заказа, а также вызывает большинство макетов счета, описанных ниже.
components/com_virtuemart/views/invoice/invoice_order.php – содержит подробности заказа, статус заказа, информацию о доставке.
components/com_virtuemart/views/invoice/invoice_items.php – содержит позиции заказа.
components/com_virtuemart/views/invoice/invoice_history.php – содержит историю движения заказа (смены статусов заказа).
Основные макеты Virtuemart 3. Письма с подробностями заказов, отправляемые продавцу и покупателю (invoice mail)
Макеты писем сложные. Я советую заниматься их редактированием только тем, кто может хорошо читать код PHP и HTML. Для всех остальных проще купить Virtuemart Email Manager Plus.
Все макеты писем представлены в двух форматах: html-письмо и raw-письмо (обычное текстовое). Ниже описаны макеты только для формата html. Макеты писем raw имеют точно тот же смысл. Выбрать формат писем можно в общих настройках Virtuemart.
components/com_virtuemart/views/invoice/mail_html.php – основной макет письма. Содержит всю информацию, отображающуюся в письме, а также вызывает большинство макетов письма, описанных ниже.
components/com_virtuemart/views/invoice/mail_html_header.php – шапка письма. Содержит изображение магазина и информацию о магазине.
components/com_virtuemart/views/invoice/mail_html_footer.php – подвал письма.
components/com_virtuemart/views/invoice/mail_html_pricelist.php – таблица заказанных товаров, их цен и статусов в письме.
components/com_virtuemart/views/invoice/mail_html_shopper.php – информация о покупателе в письме.
components/com_virtuemart/views/invoice/ mail_html_shopper_more.php – пустой макет.
components/com_virtuemart/views/invoice/mail_html_shopperaddresses.php – адрес доставки товара, указанный при оформлении заказа, в письме.
components/com_virtuemart/views/invoice/mail_html_vendor.php – расширенный формат письма для продавцов. Если вы не используете функционал мультипродавцов в VM, а скорее всего так и есть, данный макет вам не нужен.
components/com_virtuemart/views/invoice/mail_html_vendor_more.php – пустой макет.
Основные макеты Virtuemart 3. Список заказов в личном кабинете (orders)
components/com_virtuemart/views/orders/list.php – макет списка заказов в личном кабинете. Отображает перечень заказов, подробности каждого из которых выводит следующий макет.
components/com_virtuemart/views/orders/details.php – основной макет отдельного заказа в личном кабинете. Содержит всю информацию, отображающуюся в заказе, а также вызывает большинство макетов письма, описанных ниже.
components/com_virtuemart/views/orders/details_order.php – основная информация о заказе в личном кабинете.
components/com_virtuemart/views/orders/details_items.php – позиции заказа в личном кабинете.
components/com_virtuemart/views/orders/details_history.php – история изменения статусов заказа в личном кабинете.
components/com_virtuemart/views/orders/details_pdf.php – пустой макет.
Основные макеты Virtuemart 3. Редактирование данных пользователя в личном кабинете (user)
В макетах пользователя есть одна особенность: пользователь может быть как покупателем, так и продавцом магазина. В зависимости от прав пользователя, часть макетов может не использоваться, а другая часть заменяться другими макетами. Из названий макетов в целом понятно, для каких прав он используется. Скриншоты не привожу, т.к. они слишком неоднозначные.
components/com_virtuemart/views/user/edit.php – основной макет страницы редактирования данных пользователя Virtuemart 3. Может быть получен путем добавления в меню пункта типа Virtuemart –> Учетная запись. Содержит всю информацию о пользователе в полях, позволяющих ее изменить, а также его заказы и другие элементы. Вызывает большинство макетов письма, описанных ниже.
components/com_virtuemart/views/user/edit_address.php – макет редактирования адреса доставки авторизованного пользователя в личном кабинете и при оформлении заказа неавторизованного пользователя Virtuemart 3. Макет сложный. Реализован крайне неоднозначно.
components/com_virtuemart/views/user/edit_address_addshipto.php – макет выбора адреса доставки из существующих адресов.
components/com_virtuemart/views/user/edit_address_userfields.php – макет полей пользовательских данных адреса.
components/com_virtuemart/views/user/edit_orderlist.php – макет списка заказов пользователя в личном кабинете при редактировании полей. Реализован в отдельной вкладке. Зачем он нужен, когда есть список components/com_virtuemart/views/orders/list.php, мне непонятно.
components/com_virtuemart/views/user/edit_shopper.php – макет полей пользовательских данных.
components/com_virtuemart/views/user/edit_vendor.php – редактирование данных продавца. Только для пользователей с правами продавца.
components/com_virtuemart/views/user/edit_vmshopper.php – макет полей пользовательских данных.
components/com_virtuemart/views/user/login.php – форма авторизации пользователя в корзине и личном кабинете.
components/com_virtuemart/views/user/mail_html_reguser.php – макет отправки письма после регистрации покупателя.
components/com_virtuemart/views/user/mail_html_regvendor.php – макет отправки письма после регистрации продавца.
Основные макеты Virtuemart 3. Форма всплывающего окна «Задать вопрос по товару» (askquestion)
components/com_virtuemart/views/askquestion/form.php – основной макет страницы формы «Задать вопрос по этому товару» Virtuemart 3. Показывается во всплывающем окне на странице товара, когда пользователь нажимает соответствующую кнопку.
components/com_virtuemart/views/askquestion/mail_confirmed.php – макет с подтверждением отправки запроса (не письмо!).
components/com_virtuemart/views/askquestion/mail_html_question.php – письмо с запросом.
Подмакеты Virtuemart 3 (блоки, которые могут встречаться на разных страницах)
В Virtuemart 3 появились так называемые «подмакеты» или «sublayouts». Подмакеты представляют собой элементы магазина, которые могут встречаться на разных страницах. Самый яркий пример подмакета – блок цен товара. Он одинаков и в категории и в карточке товара. Теперь, если вы хотите изменить что-то в блоке цен, вам не нужно редактировать несколько макетов в разных местах. Достаточно отредактировать один подмакет и изменения появятся сразу на всех страницах. Рассмотрим подмакеты, которые предлагает нам Virtuemart 3:
components/com_virtuemart/sublayouts/addtocart.php – подмакет блока добавления товара в корзину. Включает в себя подмакеты addtocartbar, addtocartbtn, customfields. Почему так сложно? Форма добавления товара в корзину может содержать в себе дополнительные поля, являющиеся атрибутами корзины. И не просто поля, а такие, которые могут иметь несколько значений, одно из которых выбирает покупатель перед добавлением товара в корзину. Чтобы все работало правильно должно быть так, как есть.
components/com_virtuemart/sublayouts/addtocartbar.php – подмакет кнопки добавления товара в корзину с формой ввода количества товара.
components/com_virtuemart/sublayouts/addtocartbtn.php – подмакет кнопки добавления товара в корзину.
components/com_virtuemart/sublayouts/askrecomjs.php – подмакет, содержащий скрипты всплывающего окна «Задать вопрос по этому товару» и «Рекомендовать другу». Если у вас какие-либо проблемы со скриптами этих окон, то вы можете подправить их в данном подмакете.
components/com_virtuemart/sublayouts/categories.php – подмакет списка дочерних категорий родительской категории.
components/com_virtuemart/sublayouts/customfield.php – PHP-класс, генерирующий отображение настраиваемых полей. Вынесен сюда, как я понимаю, не случайно, а для того, чтобы каждый сайт мог переопределить этот класс и подправить его под особенности бизнеса. Иногда это бывает необходимо. Решение не очень правильное с точки зрения Joomla и MVC, но наиболее простое.
components/com_virtuemart/sublayouts/customfields.php – подмакет настраиваемых полей Virtuemart.
components/com_virtuemart/sublayouts/prices.php – подмакет цен товара Virtuemart 3.
components/com_virtuemart/sublayouts/products.php – подмакет списка товаров категории Virtuemart 3.
components/com_virtuemart/sublayouts/products_horizon.php – подмакет списка товаров категории Virtuemart 3 в другом формате.
components/com_virtuemart/sublayouts/rating.php – подмакет рейтинга товара.
components/com_virtuemart/sublayouts/related.php – подмакет похожего товара. 1 штука.
components/com_virtuemart/sublayouts/snippets.php – подмакет сниппетов микроразметки Schema.org.
components/com_virtuemart/sublayouts/stockhandle.php – подмакет остатков товара.
components/com_virtuemart/sublayouts/tos.php – подмакет условий обслуживания товара.
Примерно вот такое количество файлов нужно обработать, чтобы создать качественный шаблон интернет-магазина Virtuemart. Не стоит удивляться тому, что они стоят дорого, а интернет-магазин с уникальным дизайном еще дороже.
Отсюда же вытекает, что бесплатные шаблоны Virtuemart в 99% случаев либо некачественные, либо не бесплатные.
Надеюсь, данная статья поможет вам самостоятельно отредактировать оформление Virtuemart 3, а также сэкономит сотню другую зеленых енотов =).
Источник статьи: http://wedal.ru/rasshireniya-joomla/nastrojka-shablona-virtuemart-3.html