Суть вопроса расширенного описания страниц форума.
Когда данные переводятся из базы данных в HTML, становится очень сложно восстановить первоначальные структурированные данные, относящиеся к тематике сайта.
Вот, так выглядит в Яндексе вывод информации в поисковом запросе.
Пройдут месяцы, а то и годы, прежде чем поисковик "узнает" о тематике сайта и будет выводить в поиске тематическую информацию с сайта.
Однако, поисковики, могут получить значительные преимущества в индексации сайта, имея прямой доступ к структурированным данным. Разметка страниц позволяет поисковым системам понимать информацию на страницах сайта и предоставлять своим пользователям именно ту информацию, которую он ищет.
Так будет выглядеть вывод информации в поисковом запросе с сайта, который имеет разметку страниц:
О форматах разметки страниц
Для создания расширенного описания страниц могут применяться три формата:
- Микроданные
- Микроформаты
- RDFa
Google рекомендует использовать микроданные. Действительно, этот формат развивается и уже в настоящее время превосходит другие форматы по коллекции схем для разметки страниц.
Однако не всё так однозначно в рекомендации от Google. В части разметки разнообразных страниц формату Микроданных нет равных, но то изображение результата поиска с микроразметкой сайта, что я привёл выше, получено с другого формата, RDFa. То есть, стиль отображения результата в поиске определяется самим поисковиком, а наличие определённого стиля отображения результата поиска лишь косвенно свидетельствует о наличии разметки страниц.
Таким образом, при выборе формата расширенного описания страниц придётся решить вопрос о том, что важнее - красивое отображение результата поиска с вашего сайта или разметка страниц для получения полноценной индексации сайта.
Краткая информация по разметке страницы
На своих сайтах я начинал делать разметку страниц с упором на красивый стиль в результатах поиска Google, и через некоторое время информация с сайтов стала оформляться звёздочками рейтинга тем и ссылками навигации, аналогичными навигации в навбаре форума. Для разметки использовал Микроформаты. Но большего достичь не удалось, поскольку указанным форматом в основном описывались страницы с предложением различных товаров. По этой причине перешёл на разметку страницы в формате Микроданных.
Библиотека схем разметки страниц находится на сайте -
http://schema.org
Есть вариант на русском языке, но с очень ограниченным описанием -
http://ruschema.org
Для проверки разметки страницы у Google есть сервис по адресу -
https://www.google.com/webmasters/tools/richsnippets
Результаты разметки страниц сайта
Разметку страниц в формате Микроданные начал за две недели до Нового года, а окончил работу только что. Фактически основная работа была выполнена вначале в течении нескольких дней, затем вносились дополнения по результатам индексации. Ещё одно обстоятельство -
ни до начала разметки, ни после информация на сайтах не изменялась и не добавлялась.
Прежде чем привести результаты обхода роботом страниц с разметкой процитирую справку от Google
"Проиндексировано всего – общее количество URL в индексе Google на данный момент. Эти URL могут отображаться в результатах поиска наряду с URL, которые были обнаружены другими способами. По мере добавления новых страниц вашего сайта в индекс и удаления старых страниц этот показатель будет изменяться. Количество проиндексированных URL обычно значительно меньше, чем количество просканированных, поскольку в индекс не добавляются повторяющийся контент, неканонические URL, страницы, содержание которых не представляет особой ценности, в также страницы с метатегом noindex."
На графиках
- синим цветом выделено количество страниц в индексе
- зелёным цветом, не выбранные страницы
- жёлтым цветом, заблокированые в файле robots.txt
На графике "Статуса индексирования" одного из сайтов видно, что Google сразу определился с невыбранными страницами (зелёный цвет). Более того, количество неопределённых страниц стало меньше проиндексированных.

На графике другого сайта повторилась та же ситуация с невыбранными страницами, кроме этого, Google нашёл в "невыбранных" страницах полезную информацию (содержание сайта оставалось неизменным).

Ниже приведу два графика с одного и того же сайта о количестве загружаемых страниц и об обёме загружаемой информации. Из графиков видно, что показатели выросли в два раза, частота посещения сайта роботами возросла многократно.
Степень сложности разметки страниц - Высокая
- Необходимо знание HTML.
- Необходимы знания по схемам разметки страниц в нужном стандарте.
- Требуется обязательная правка шаблонов.
Трудоёмкость напрямую зависит от степени детализации информации на странице, соответственно, количества вносимых изменений в шаблоны форума.
Примеры разметки страниц в формате Микроданных
Перед началом изменений в шаблонах настоятельно рекомендую
сохранить код шаблона для того, что бы откатить его в случае появления ошибок в HTML коде.
Редакцию шаблона удобно производить в редакторе, который имеет подсветку тэгов. Сама разметка производится добавлением названия схем разметки к тегам, имеющимся в шаблоне или добавлением тегов <div></div> или <span></span> в шаблон. В тех случаях, когда информация со страницы предоставляется только роботу, применяется тэг <meta .... />
ПРИМЕР №1. Разметка для рейтинга темы.
Поскольку рейтинг на форуме отображается картинкой в виде звёздочек, а такой вариант не понятен для Микроформатов, то для робота создаются свой HTML код с использованием тега <meta ... />
В шаблоне SHOWTHREAD находите строку с кодом
HTML Code:
<if condition="$show['popups']"><script type="text/javascript">vbmenu_register("threadrating");</script></if>
ниже этой строки размещаем следующий код разметки
HTML Code:
<span itemprop="aggregateRating" itemscope itemtype="http://schema.org/AggregateRating">
<meta itemprop="bestRating" content="5" />
<meta itemprop="worstRating" content="0" />
<meta itemprop="ratingValue" content="$thread[voteavg]" />
<meta itemprop="reviewCount" content="$thread[votenum]" />
</span>
Сохраняем шаблон.
Далее открываем в браузере страничку для проверки разметки
https://www.google.com/webmasters/tools/richsnippets
Вводим в поле проверки адрес любой темы. Если у темы есть оценка, то появится изображение звёздочек в результатах теста.
ПРИМЕР №2 Разметка для ссылок в теле сообщения.
Напомню, что вопрос о скрытии ссылок на внешние ресурсы не раз обсуждался. А вот как это выглядит в случае разметки страницы.
За редким исключением, требуется редактировать не шаблон, а файл.
Открываем файл
class_bbcode.php
и находим строку (приблизительно №1837)
PHP Code:
return "<a href=\"$rightlink\" target=\"_blank\">$text</a>";
Заменяем код строки на следующий
PHP Code:
// return "<a href=\"$rightlink\" target=\"_blank\">$text</a>";
if (strpos($rightlink, 'www.ВАШ САЙТ.ru') !== false)
{
return "<a href=\"$rightlink\" target=\"_blank\" itemprop=\"relatedlink\">$text</a>";
}
else
{
return "<noindex><a href=\"$rightlink\" target=\"_blank\" rel=\"nofollow\">$text</a></noindex>";
}
Не забудьте заменить «ВАШ САЙТ» на имя своего домена, иначе код работать не будет.
Сохраняем файл.
Поясню пример. Если ссылка внутренняя то роботу показывается ссылка, если нет, то ссылка отсутствует в разметке страницы. Ну, а те боты, которые не пользуются разметкой страницы, ссылку на сторонние ресурс увидят, но с запретом на индексирование.
Проверить правильность разметки можете так же как описано в первом примере.
ПРИМЕР №3 Разметка целой страницы
Для примера возьму страницу tags.php
Потребуется правка двух шаблонов. Для наглядности внесения разметки первым шаблоном будет
tag_cloud_page
Опять же, для наглядности можете посмотреть, как выглядит страничка tags.php без разметки в проверке разметки от Google
https://www.google.com/webmasters/tools/richsnippets
Начинаем редактировать шаблон tag_cloud_page
Находим код
HTML Code:
<html xmlns="http://www.w3.org/1999/xhtml" dir="$stylevar[textdirection]" lang="$stylevar[languagecode]">
Заменяем следующим кодом
HTML Code:
<html itemscope itemtype="http://schema.org/WebPage" xmlns="http://www.w3.org/1999/xhtml" dir="$stylevar[textdirection]" lang="$stylevar[languagecode]">
Находим код
HTML Code:
<title>$vboptions[bbtitle] - $vbphrase[tags]</title>
Заменяем на
HTML Code:
<title itemprop="name">$vboptions[bbtitle] - $vbphrase[tags]</title>
Всё. Описание страницы создано. Для полноты описания нужно было бы править мета тэги в шаблоне $headinclude, но, поскольку, указанный шаблон общий для всех страниц, то его правка будет преждевременной.
Смотрим в Google, как выглядит страничка tags.php и приступаем к разметке содержимого странички. Для этого открываем шаблон
tag_cloud_link
Заменяем весь код шаблона на следующий код
HTML Code:
<span itemprop="keywords" itemscope itemtype="http://schema.org/KeyWords">
<span itemprop="name">
<a href="tags.php?$session[sessionurl]tag=$thistag[tagtext_url]" class="tagcloudlink level$thistag[level]" itemprop="url">$thistag[tagtext]</a>
</span>
</span>
Сохраняем шаблон.
Смотрим результат разметки страницы в проверке разметки.
В данном примере я выбрал описание страницы WebPage - это общее название страницы. Если есть специализированные страницы, то лучше выбрать подходящее название для неё.
На этом оканчиваю статью про разметку страниц.