9 июля 2013 г.

В каналах продвижения OpenCart по умолчанию доступен модуль Google Sitemap, отвечающий за формирование и показ карты сайта в виде файла sitemap.xml. Однако у него есть существенные недостатки, основными из которых являются высокая нагрузка на базу данных и неоптимизированная структура данных с точки зрения SEO.

Для начала стоит отметить, для чего необходима карта сайта в формате XML, и что получает владелец сайта при её использовании.

Основная функция карты сайта, это представление структуры сайта в понятном виде для поисковых роботов (http://www.sitemaps.org/). В карте сайта могут быть представлены страницы, до которых нельзя дойти путём обхода ссылающихся друг на друга объектов. Кроме того, карта сайта экономит вычислительные ресурсы сервера, т.к. роботы не тратят время на перебор всех страниц, а получают прямые ссылки-указатели. Адрес карты сайта задаётся в директиве Sitemap файла robots.txt.

Но вернёмся к недостаткам, которые возникают при использовании стандартного модуля.

Чем больше товаров, тем медленнее формируется карта сайта и тем выше вероятность того, что поисковый робот откажется от её использования, т.к. посчитает файл слишком медленным или получит ошибку после превышения максимального времени выполнения кода на PHP (пустую страницу). Это вполне ожидаемо для магазинов с количеством товаров > 1000 на виртуальном хостинге и с количеством товаров > 5000 на виртуальном выделенном сервере. На каждый товар отводится не менее одного запроса к БД, а также несколько запросов используется на получение канонического вида ссылки, итого, для тысячи товаров может быть выполнено до 3-х тысяч запросов к БД!

Решение в виде отдельного модуля Sitemap Pro использует всего один запрос к базе данных! Это стало возможным за счёт особого алгоритма перебора выбранных объектов и собственного механизма формирования ссылок, который полностью совместим с форматом ссылок OpenCart.

Ещё один недостаток стандартного модуля связан с выводом товаров, категорий, производителей и статей  в нескольких представлениях: с использованием канонических ссылок с путями (товары в категориях), с использованием канонических ссылок без путей и в виде ссылок-идентификаторов. По сути, происходит дублирование одних и тех же страниц под разными адресами, а с точки зрения SEO это нерационально!

Sitemap Pro позволяет выбрать тип ссылок для страниц карты сайта, например, можно построить карту сайта только на основе канонических ссылок, что приветствуется при SEO-продвижении, а также исключает попадание в карту сайта объектов, чьи родители скрыты, т.е. отключены.

Кроме того, Вы можете настраивать дополнительные параметры карты сайта, такие как частота опроса, приоритет и включение даты последнего изменения:


Несмотря на то, что дата последнего изменения в карте сайта считается опциональной, она всё же влияет на поведение поискового робота. При наличии даты последнего изменения, робот не будет лишний раз обращаться к странице, а дождётся пока разница новой и предыдущей даты не превысит или не сравнится с частотой обхода.

Подведём итоги и посмотрим, какие преимущества даёт модуль Sitemap Pro:
  1. Высокая скорость формирования карты сайта за счёт одного запроса к базе данных и собственного алгоритма обработки выборки данных.
  2. Четыре основных секции: главная страница, производители, товары, категории и статьи. Для каждой из секции (см. примечания 1,2) могут быть заданы свой тип ссылок, частота опроса, приоритет и последнее изменение. Секции могут быть отключены (см. Статус).
  3. Построение уникальной структуры на основе типа ссылок. Исключена возможность попадания товаров из скрытых категорий.
Дополнительно реализована возможность отключения заголовка Set-Cookie, который устанавливается при первом обращении к OpenCart и в котором нет необходимости для карты сайта, что позволяет кешировать её как статический файл через сервер Nginx. Также поддерживается расширение ссылок config_seo_url_postfix для режима SEO URL Pro.

* * *

В Sitemap Pro v.1.2 добавлены две новые опции (см. скриншот выше):
  • Опция автоприоритета позволяет увеличить выставленный приоритет для товаров на одну десятую, если на них есть отзывы. Это позволяет поисковому роботу обратить внимание на обсуждаемые товары в первую очередь, соответственно, они быстрее остальных появятся в результатах поисковой выдачи.
  • Опция скрытия дубликатов исключает из карты сайта повторяющиеся товары в разных категориях. Поисковому роботу больше не придётся обращаться, по сути, к одним и тем же страницам.

Состав архива
./catalog/controller/feed/sitemap_pro.php
./admin/controller/feed/sitemap_pro.php
./admin/view/template/feed/sitemap_pro.tpl
./admin/language/russian/feed/sitemap_pro.php
./admin/language/english/feed/sitemap_pro.php
Представленный список файлов необходимо поместить в каталог OpenCart согласно их директориям.
Условия приобретения: Модуль может быть использован только в личных целях, не допускается распространение в составе ПО OpenCart без согласия авторов модуля или публикация его в общедоступном виде. Модуль возврату не подлежит!

Условия поддержки: Бесплатная поддержка в рамках базовой версии 1.x, в том числе выпуск возможных обновлений, осуществляется в течении года с момента приобретения через зарегистрированный электронный адрес, с использованием которого была осуществлена сделка.

Стоимость: $8

Примечание: Если в файле robots.txt используется ссылка на файл sitemap.xml, то не забудьте внести соответствующие изменения в файл .htaccess, а именно, заменить строку RewriteRule ^sitemap.xml$ index.php?route=feed/google_sitemap [L] на RewriteRule ^sitemap.xml$ index.php?route=feed/sitemap_pro [L] 

Эта статья может быть дополнена расширенной информацией, следите за обновлениями. По вопросам приобретения просьба обращаться через страницу контактов.

11 комментариев:

  1. Вышло обновление Sitemap Pro v.1.2 (см. описание выше), если по какой-то причине оно не пришло на электронную почту тех, кто ранее приобрел этот модуль, тогда сообщите об этом через страницу контактов.

    ОтветитьУдалить
  2. Обновлена модель запроса к БД, карта сайта теперь формируется на порядок быстрее. Среднестатистический сервер генерирует sitemap.xml из 7 тыс. наименований товаров в среднем за полторы секунды.

    ОтветитьУдалить
  3. Ответ на частый вопрос о совместимости с клонами OpenCart: модуль протестирован и работает на таких магазинах как ocStore и MaxyStore версии 1.5 и выше!

    ОтветитьУдалить
  4. Сколько максимум товаров поддерживает??

    ОтветитьУдалить
    Ответы
    1. Такого ограничения нет, сколько есть, столько и выберет. При этом необходимо помнить о естественных ограничениях, таких как максимальное значение выделенной памяти на выполнение скрипта.

      Удалить
  5. Не планируете добавить функционал, что бы дробить его на части например для больших магазинов так рекомендуется!

    ОтветитьУдалить
    Ответы
    1. Карта сайта имеет ограничение по размеру в 10Мб, это в среднем около 50 тыс. товарных позиций, что более чем достаточно для качественного магазина.

      Для торговых площадок, где количество товаров от разных участников исчисляется сотнями тысяч, разделение карты сайта на несколько частей логично, такую возможность можно получить через заказ специальной доработки.

      Удалить
  6. Последняя версия так и осталась Sitemap Pro v1.5?

    ОтветитьУдалить
    Ответы
    1. Интересно, где Вы увидели версию 1.5? Дальнейшее развитие модуля ориентировано на индивидуальные заказы (см. мой комментарий выше).

      Удалить
  7. Интересует доработка под ocStore 2.3

    ОтветитьУдалить
    Ответы
    1. Здравствуйте! Пожалуйста, обратитесь через электронную почту (см. Услуги). Не забудьте сообщить адрес сайта и уточнить степень доработки интересуемого решения.

      Удалить

  • RSS
  • Twitter
  • Youtube