Meta в товарах VirtueMart

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

Meta товаров VirtueMart

Здесь всё просто и никаких извращений с файлами магазина делать не надо. Для оформления Description товаров переходите в карточку товара, и заполняйте поле «Краткое описание» расположенное справа (фото 1). Не путайте это окно с окном внизу, где надо делать описание товара, которое будет отображаться на странице и необходимо для пользователей.

Заливать водой Meta Desc не надо – укажите в 1-2 предложениях преимущества товара и его особенности. Для тех, кто на подводной лодке, напомню, что Description будет видно только в исходном коде (для ПС) и Google почти всегда выводит его в результатах поиска, как описание страницы.

О Meta Keywords создатели VirtueMart 1 сильно не заворачивались и тут я ни их стороне, так как ключи сейчас роли не играют. Для полного самоуспокоения воспользуйтесь сторонними плагинами или пропишите ключи для всего сайта в «основных настройках» сайта, также не забудьте избавиться от дублей Meta в обычных материалах Joomla, если вы комбинируете на сайте возможности CMS и VirtueMart.

Meta категорий VirtueMart

Meta в категориях VirtueMart

Здесь дело более серьёзное, так как многие продвигают именно категории VirtueMart, поэтому их надо в хорошем смысле слова вылизать, прописав полный набор Meta. Сделать это без мата создатели не позволили, и геморрой при оформлении Meta категорий выскакивал то тут, то там. Решать проблемы пришлось кардинально, то есть хирургическим путём замены части кода в файлах магазина. В общем и целом нам понадобиться файл

administrator/components/com_virtuemart/html/shop.browse.php

В нём нужно найти кусок кода

if( $category_id ) {
/**
* CATEGORY DESCRIPTION
*/
$db->query( "SELECT category_id, category_name FROM #__{vm}_category WHERE category_id='$category_id'");
$db->next_record();
$category_name = shopMakeHtmlSafe( $db->f('category_name') );
// Set Dynamic Page Title
$vm_mainframe->setPageTitle( $db->f("category_name") );
$desc = $ps_product_category->get_description($category_id);
$desc = vmCommonHTML::ParseContentByPlugins( $desc ); // Prepend Product Short Description Meta Tag "description" when applicable $mainframe->prependMetaTag( "description", substr(strip_tags($desc ), 0, 255) ); }

 

И заменить его на –

if( $category_id ) {
/**
* CATEGORY DESCRIPTION
*/
$db->query( "SELECT category_id, category_name FROM #__{vm}_category WHERE category_id='$category_id'");
$db->next_record();
$category_name = shopMakeHtmlSafe( $db->f('category_name') );
$desc = $ps_product_category->get_description($category_id);
$desc = vmCommonHTML::ParseContentByPlugins( $desc );
// Prepend Product Short Description Meta Tag "description" when applicable
// !!!!!!!!!!!!!Патерн для мета-ключевых слов заключеных в тег спан со стилем display:none;
$regex = '##iU'; // !!!!!!!!!!!!!Патерн для мета-описания заключенный в тег спан со стилем display:none; $regex_d = '##iU';
// !!!!!!!!!!!!!Патерн для тайтла который не должен быть названием категории заключенный в тег спан со стилем display:none;
$regex_b = '##iU'; if(preg_match($regex_b, $desc, $title_a)) { $desc = preg_replace($regex_b,"",$desc); $vm_mainframe->setPageTitle( $title_a[0] ); } else { $vm_mainframe->setPageTitle( $db->f("category_name") ); } $keywords = preg_match($regex, $desc, $maches); $mainframe->prependMetaTag( "keywords", strip_tags($maches[0])); $desc = preg_replace($regex,"",$desc); if(preg_match($regex_d, $desc, $descrip_a)) { $desc = preg_replace($regex_d,"",$desc); $mainframe->prependMetaTag( "description", strip_tags($descrip_a[0]) ); } else { $mainframe->prependMetaTag( "description", strip_tags($desc)); } }

 

Теперь надо будет вспомнить основы html и вручную прописать Meta в коде «Информации о категории». Для этого открываем категорию (VirtueMart – Сводная информация – список категорий), заходим в исходный код описания и вставляем сверху –

<span class="keywords" style="display: none;">мета ключи</span>
<span style="display: none;">мета описание</span>
<span style="display: none;"> тайтл</span>

Последнюю строку можно опустить – прописывать же title надо, если вас не устраивает основной или вы хотите чтобы видимое для посетителей и название для поисковиков отличались.

Готовый файл shop.browse

Дабы не навлечь на себя гнева к материалу я прилагаю файл shop.browse.php, который надо просто закинуть в administrator/components/com_virtuemart/html/shop.browse.php и у вас появится возможность прописывать Meta в категориях VirtueMart 1.1.8 на любой вкус и цвет.

ПС. В других версиях VirtueMart не проверено по причине собственной лени, поэтому перед экспериментами не забывайте про бекап.

Комментарии   

+1 #4 http://as3nui.com/ 22.04.2014 01:16
I think this is one of the most important info
for me. And i'm glad reading your article. But want to remark
on some general things, The site style is great, the articles is really excellent : D.
Good job, cheers
Цитировать
0 #3 Administrator 11.04.2014 10:29
Цитирую Игорь П:
Meta категорий, конечно, хорошо, но в VirtueMart так криво выводятся Meta товаров - ключи берутся из общих по сайту, Title тоже не идеально. Нет вариантов, как ещё и с товарами разобраться?

Есть вариант, только сырой пока - как доведу до ума выложу. В товарах в основном проблемы с keywords, а как они учитываются знаете - описание же и через старую форму нормально оформляется.
Цитировать
+1 #2 Игорь П 11.04.2014 10:14
Meta категорий, конечно, хорошо, но в VirtueMart так криво выводятся Meta товаров - ключи берутся из общих по сайту, Title тоже не идеально. Нет вариантов, как ещё и с товарами разобраться?
Цитировать
-1 #1 http://pharmpdf.com/ 07.04.2014 01:18
It's remarkable in favor of me to have a site, which is beneficial in favor
of my knowledge. thanks admin
Цитировать

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


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