Поисковая оптимизация (SEO): строки запросов, сайт на нескольких языках, формы и другие вопросы о CMS Plone
Не индексируйте строки запросов
Очень часто желательно убедиться, что страницы строки запроса (http: // yoursite/page? query_string_action=something) не попадают в поисковые индексы. В противном случаи, поисковые боты могут индексировать страницы как результат собственных поисковых движков сайта, (yoursite/search? SearchableText=…) снижая видимость фактического контента страниц.
GoogleBot имеет поддержку регулярных выражений в файле robots.txt и может быть настроен так, чтобы игнорировать любой URL.
Индексирующая строка запроса является причиной таких crawler crawl, как
- Различные результаты поиска (?SearchableText);
- Списки ключевых слов (?Subject);
- Язык переключения кода (? set_language) … способствует появлению set_language в качестве документа в результатах поиска.
Также, "почти" человеческие строки запроса выглядят в адресной строке уродливо…
Домены первого уровня и языки
Используя доменные имена первого уровня (.fi для Финляндии.uk для Великобритании, и т. д.), чтобы сделать различие между различными языками и областями - оптимальное решение с точки зрения SEO. Поисковые движки используют TLD информацию для повторного заказа результатов поиска, опираясь на то, где выполнен запрос поиска (есть различие между результатами поиска в google.com и в google.fi).
Plone не использует никаких строк запроса для страниц контента. Заставляя роботов игнорировать строки запросов, особенно это важно при размещении многоязыкового сайта и при использовании доменных имен первого уровня (TLD) чтобы разделить языки: если Вы не настроите файл robots.txt чтобы игнорировать ссылки ?set_language только один из ваших доменов первого уровня (.com, .fi, .xxx) будет появляться в результатах поиска надлежащим образом. Например, мы имели ситуацию, где наш домен www.twinapex.fi не появлялся надлежащим образом при поиске, потому что Google рассматривал ww.twinapex.com?set_language=fi в качестве первичного источника контента (допуская к окончательному контенту через английский сайт и ссылки переключения языков).
Общие формы
Plone имеет несколько форм (send to, login), которые могут появляться на любой странице контента. Они должны быть отключены, иначе в результате поиска может отобразиться та страница, на форму которой идет ссылка, а не фактическая страница контента.
Скрытый контент и контент, исключенный из навигации
Любой контент, исключенный из sitemap-навигации должен быть отключен в файле robots.txt. Например, если Вы отметите, "исключить из навигации” в папке Plone, не забудьте обновить также и файл robots.txt на хостинге.
В нашем случае, внутренний банк изображений не должен оказаться в индексе, хотя сами изображения видны на сайте. Иначе Вы получите забавный результат поиска: при поиске человека по имени, первым результатом будет фотография, а не биография.
Sitemap-протокол
Crawler-ы используют протокол Sitemap, чтобы помочь определить контент страниц на вашем сайте. Начиная с версии 3.1, Plone умеет автоматически генерировать sitemap.xml.gz. Вам лишь надо зарегистрировать sitemap.xml.gz в Google web-мастере вручную.
Там есть расширение протокола sitemap для мобильных сайтов.
Инструменты Web-мастера
Инструменты Google для Web-мастера позволяют контролировать способность сайта появляться в поисковике Google и настраивать такие специфические задачи поиска, как передача sitemaps.
Я не знаю, какие подобные функции имеют другие поисковики. Если Вы знаете, пожалуйста, поделитесь Вашими знаниями.
HTML <head> метаданные
Поисковые движки в большинстве случаев игнорируют <Мета> теги, за исключением названия, поэтому нет никакого смысла стараться писать их.
Пример файла robots.txt
Вот наш оптимизированный файл robots.txt для www.twinapex.com:
# Normal robots.txt body is purely substring match only # We exclude lots of general purpose forms which are available in various mount points of the site # and internal image bank which is hidden in the navigation tree in any case User-agent: * Disallow: set_language Disallow: login_form Disallow: sendto_form Disallow: /images # Googlebot allows regex in its syntax # Block all URLs including query strings (? pattern) - contentish objects expose query string only for actions or status reports which # might confuse search results. # This will also block ?set_language User-Agent: Googlebot Disallow: /*?* Disallow: /*folder_factories$ # Allow Adsense bot on entire site User-agent: Mediapartners-Google* Disallow: Allow: /*
Оригинал статьи на blog.twinapex.fi