И так продолжаем серию статей по оптимизации магазина на движке PrestaShop.
Напомню, в
первой части затронули такие темы: перелинковка, оптимизация,
правильное заполнение файла robots.txt. Сегодня хочу поговорить про "красивую" выдачу магазина в ПС Google.
При правильном подходе вы существенно можете улучшить видимость сайта в выдаче ПС Google, что в свою очередь может также существенно повысить
посещаемость и конверсию сайта.
Поехали... но неспеша
Выделяйся
Я не буду вдаваться в подробности по какому принципу работает данная схема, что на картинке, вот вам
сыль с описанием. Такая подача сайта в выдаче зрительно выделяет его среди других сайтов и пользователь в 90% кликнет именно на него.
Интеграция Google Rich Snippets и Prestashop
Открываем файл
product.tpl в папке вашего шаблона (themes/.../product.tpl)
строка
Показать код [CODE]<div id="primary_block" class="clearfix">
</div>
дописываем
itemtype="http://schema.org/Product"
Показать код [CODE]<div id="primary_block" class="clearfix" itemscope="" itemtype="http://schema.org/Product">
</div>
Таким образом мы указали что это именно продукт и дальше пойдут его характеристики, цена, доставка и т.д
Продолжаем, там же строка
Показать код [CODE][h1]{$product->name|escape:'htmlall':'UTF-8'}[/h1]
заменим
Показать код [CODE][h1]<span itemprop="name">{$product->name|escape:'htmlall':'UTF-8'}</span>[/h1]
Указали название продукта
Описание (description)
Показать код [CODE]<div id="short_description_content" class="rte align_justify">{$product->description_short}</div>
заменим на
Показать код [CODE]<div id="short_description_content" class="rte align_justify" itemprop="description">{$product->description_short}</div>
Указываем картинку товара, находим
Показать код [CODE] <!-- product img-->
<div id="image-block">
{if $have_image}
<img src="{$link->getImageLink($product->link_rewrite, $cover.id_image, 'large')}"
{if $jqZoomEnabled}class="jqzoom" alt="{$link->getImageLink($product->link_rewrite, $cover.id_image, 'thickbox')}"{else} title="{$product->name|escape:'htmlall':'UTF-8'}" alt="{$product->name|escape:'htmlall':'UTF-8'}" {/if} id="bigpic" width="{$largeSize.width}" height="{$largeSize.height}" />
{else}
<img src="{$img_prod_dir}{$lang_iso}-default-large.jpg" id="bigpic" alt="" title="{$product->name|escape:'htmlall':'UTF-8'}" width="{$largeSize.width}" height="{$largeSize.height}" />
{/if}
</div>
заменим
Показать код [CODE] <!-- product img-->
<div id="image-block">
{if $have_image}
<img itemprop="image" src="{$link->getImageLink($product->link_rewrite, $cover.id_image, 'large')}"
{if $jqZoomEnabled}class="jqzoom" alt="{$link->getImageLink($product->link_rewrite, $cover.id_image, 'thickbox')}"{else} title="{$product->name|escape:'htmlall':'UTF-8'}" alt="{$product->name|escape:'htmlall':'UTF-8'}" {/if} id="bigpic" width="{$largeSize.width}" height="{$largeSize.height}" />
{else}
<img src="{$img_prod_dir}{$lang_iso}-default-large.jpg" id="bigpic" alt="" title="{$product->name|escape:'htmlall':'UTF-8'}" width="{$largeSize.width}" height="{$largeSize.height}" />
{/if}
</div>
Теперь самое важное указываем
цену товара. Ищем код
Показать код [CODE] <span class="our_price_display">
{if $priceDisplay >= 0 && $priceDisplay <= 2}
<span id="our_price_display">{convertPrice price=$productPrice}</span>
{if $tax_enabled && ((isset($display_tax_label) && $display_tax_label == 1) OR !isset($display_tax_label))}
{if $priceDisplay == 1}{l s='tax excl.'}{else}{l s='tax incl.'}{/if}
{/if}
{/if}
</span>
{if $priceDisplay == 2}
<span id="pretaxe_price"><span id="pretaxe_price_display">{convertPrice price=$product->getPrice(false, $smarty.const.NULL)}</span> {l s='tax excl.'}</span>
{/if}
допишем
itemprop="offers" itemscope="" itemtype="http:// schema.org/Offer" и получим
Показать код [CODE] <span class="our_price_display" itemprop="offers" itemscope="" itemtype="http://schema.org/Offer>
{if $priceDisplay >= 0 && $priceDisplay <= 2}
<span id="our_price_display">{convertPrice price=$productPrice}</span>
{if $tax_enabled && ((isset($display_tax_label) && $display_tax_label == 1) OR !isset($display_tax_label))}
{if $priceDisplay == 1}{l s='tax excl.'}{else}{l s='tax incl.'}{/if}
{/if}
{/if}
</span>
{if $priceDisplay == 2}
<span id="pretaxe_price"><span id="pretaxe_price_display">{convertPrice price=$product->getPrice(false, $smarty.const.NULL)}</span> {l s='tax excl.'}</span>
{/if}
Я затронул лишь основные данные участвующие при разметки страницы товара. Для проверки измененных данных у google есть специальный инструмент для проверки микроразметки -
Rich Snippet Tool.
PS на всякий случай сделайте бэкап вашего магазина )