Joomla! 2.5 + Virtuemart 2 — скрываем часть контента от поисковиков

Проблема с уникальностью контента, а особенно в Интернет-магазинах всегда актуальна. Товаров много, копирайтеров мало, а чаще всего они бывают бессильны — например технические характеристики товаров можно рерайтить до зелёных слонов, но так и не получить нужного результата. Тогда в ход идут различные ухищрения, дабы не потерять вес в глазах поисковиков.

Самый простой вариант, и пожалуй самый действенный на данный момент — использовать функцию jQuery load…

Казалось бы, что может быть проще?

Цитата:

Третий способ пока даёт большие надежды, и по принципу работы похож на вариант закрытия ссылок js скриптом. Спрятать можно почти что угодно, но иногда бывают накладки. Главное, что эффективно прячет текстовый и ссылочный контент. Суть этого способа заключается в том, что контент который мы хотим спрятать, размещается во внешнем файле и подгружается средствами Ajax в указанное нами место, в самый последний момент, после полной загрузки документа браузером, то есть страницы. Радует что ни Яндекс, ни даже Google, сегодня не умеют подгружать внешние файлы после того как документ полностью готов. Плюс ко всему этому не сильно сложная реализация, которая доступна почти каждому.

Для работы потребуется подключенная библиотека jQuery. Далее создаём файл с контентом, который необходимо скрыть. Это может быть html или php файл, в зависимости от того, что необходимо подгружать, например это у нас будет content.html, который будет расположен в папке hidden. Далее в шапке страницы в тегах <head> необходимо добавить следующего вида скрипт:

<script type="text/javascript">$(document).ready(function(){$('#hidden').load('hidden/content.html');});</script> 

А на страницу в то место, где должен отображаться контент, добавляем пустой div:

<div id="hidden"></div>

И, всё готово. Однако, не будем спешить — как оказалось, способ для вышеуказанной связки не работает, а гугл в это вопросе оказался бессилен. Ниже описана попытка заставить Virtuemart всё-таки скрыть часть контента (в данном случае — подробное описание товара) от поисковых ботов. Не скажу, что этот способ на 100% работает, но теоретически должен.

Нам понадобится файл из директории templates/имя_шаблона/html/com_virtuemart/productdetails/default.php — именно он отвечает за вывод карточки товара. Далее, ищем блок

<div class="product-description" itemprop="description">
<?php /** @todo Test if content plugins modify the product description */ ?>
<span class="title"><?php echo JText::_('COM_VIRTUEMART_PRODUCT_DESC_TITLE') ?></span>
<?php echo $this->product->product_desc; ?>
</div>

Именно он отвечает за вывод названия и полного описания товара. Оборачиваем этот кусок в jQuery:

        <div class="product-description" itemprop="description">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.0/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$('.product-description').html(<?php echo json_encode($this->product->product_desc); ?>);
});
</script>
        </div>

Что получается в итоге? Директива $(document).ready(function() срабатывает только после построения всей объектной модели документа, динамически подгружая нужные данные аналогично load. Отличие от основного способа — нет внешних файлов, в остальном они идентичны.

Взлетит этот вариант или нет на 100% сказать трудно — алгоритмы поисковиков постоянно совершенствуются и вполне возможно, что работать оно не будет. Более того, будет распознаваться как «клоакинг» со всеми вытекающими, так что, стоит использовать осторожно.

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

Ваш e-mail не будет опубликован. Обязательные поля помечены *

1 × 4 =