Полезная информация


----

Начать новую тему Ответить на тему
АвторСообщение

 Сообщение Семантическая разметка phpBB3: Темы форума 2013-09-17

Аватар пользователя

Статья обновлена на 18.02.2017

Итак, ребята, будем вместе изучать семантическую разметку ибо вещь эта полезная для наших форумов. Что же такое Schema.org ???

Schema.org – это стандарт семантической разметки данных в сети, объявленный поисковыми системами Google, Bing и Yahoo! летом 2011 года. Цель семантической разметки – сделать интернет более понятным, структурированным и облегчить поисковым системам и специальным программам извлечение и обработку информации для удобного её представления в результатах поиска.
Разметка происходит непосредственно в HTML-коде страниц с помощью специальных атрибутов и не требует создания отдельных экспортных файлов.

Используя семантическую разметку, можно улучшить представление сниппета вашего сайта в результатах поиска.
Яндекс писал(а):

Разметка может сделать ваш сайт более заметным в Поиске Яндекса и таким образом привлечь больше посетителей, принадлежащих целевой аудитории. Яндекс же заинтересован в том, чтобы пользователи решали свои задачи с помощью Поиска. Одна из метрик качества Поиска так и называется — «счастье пользователя». Сайты, повышающие «счастье», ранжируются выше.

Собственно, выгода очевидна. Если согласны, то читаем далее ...
Вообщем-то стандарт представляет из себя набор классов, описывающих всевозможные сущности и их свойства. Сейчас их уже несколько сотен. Постоянно идет работа по улучшению стандарта, добавляются новые свойства, уточнятся существующие. Именно для форумов, лично я так думаю, подойдет тип Статья (ScholarlyArticle), вы конечно можете подобрать любой другой тип если разбираетесь во всем больше чем я.

Собственно набор свойств из Статья (ScholarlyArticle) минималистичен, но главное - это поддерживается как минимум Яндексом и Гуглом. Можно выделять следующие типы данных в статье
1. articleBody (тип данных - текст) - Это текст самой записи.
2. headline (тип данных - текст) - Это имя записи (в случае форумов - имя темы).
3. author (тип данных - текст) - Это имя автора записи
4. datePublished (тип данных - дата) - Это дата публикации записи
5. image (тип данных - ссылка) - Это картинка к записи
Разумеется свойств куда больше, но мы вообще будем использовать 5 типов.

Приступим к разметке ...
Итак, исходя и такой логики - в первом посте - больше всего информации, значит будет делать первый пост главным. Нам надо сделать условие только для первого поста, первого на первой странице, остальные - не в счет. Открываем viewtopic.php и находим
'PAGINATION'    => $pagination,
 

Вставляем перед найденным
 'PAGE_NUMOO'      => floor($start / $config['posts_per_page']) + 1,
 

Таким образом у нас есть условие для первого поста первой страницы и только для него.
<!-- IF postrow.S_FIRST_ROW  && PAGE_NUMOO eq 1 --> любой код<!-- ENDIF -->
 

Далее начинаем колдовать над шаблоном viewtopic_body.html используемого стиля. Процесс таков:
1. Присвоить тип разметки
2. Выделить автора
3. Выделить имя темы (выделится вместе с ссылкой)
4. Выделить само сообщение
5. Выделить дату сообщения
6. Выделить картинку для сообщения
Поехали....

А) Для стилей на основе просильвер открыть указанный ранее шаблон и найти (это часть строки, вставлять строго после указанного элемента)
   <div id="p{postrow.POST_ID}"
 

Вставить после найденного
<!-- IF postrow.S_FIRST_ROW  && PAGE_NUMOO eq 1 --> itemscope itemtype="http://schema.org/ScholarlyArticle" <!-- ENDIF -->
 

Найти
<div class="content"
 

Вставить после найденного
<!-- IF postrow.S_FIRST_ROW  && PAGE_NUMOO eq 1 -->itemprop="articleBody" <!-- ENDIF -->
 

Найти
<!-- IF not postrow.U_POST_AUTHOR --><strong>{postrow.POST_AUTHOR_FULL}</strong><!-- ELSE -->{postrow.POST_AUTHOR_FULL}<!-- ENDIF -->
 

Заменить найденное на
<div <!-- IF postrow.S_FIRST_ROW  && PAGE_NUMOO eq 1 -->itemprop="author" <!-- ENDIF -->><!-- IF not postrow.U_POST_AUTHOR --><strong>{postrow.POST_AUTHOR_FULL}</strong><!-- ELSE -->{postrow.POST_AUTHOR_FULL}<!-- ENDIF --></div>
 

Найти
<a href="#p{postrow.POST_ID}">{postrow.POST_SUBJECT}</a>
 

Заменить на
<a href="#p{postrow.POST_ID}"><span <!-- IF postrow.S_FIRST_ROW  && PAGE_NUMOO eq 1 -->itemprop="headline" <!-- ENDIF -->>{postrow.POST_SUBJECT}</span></a>
 

Найти
{postrow.POST_DATE}
 

Заменить найденное на
<!-- IF not S_USER_LOGGED_IN --><span <!-- IF postrow.S_FIRST_ROW  && PAGE_NUMOO eq 1 -->itemprop="datePublished" <!-- ENDIF -->>{postrow.POST_DATE1}</span><!-- ELSE -->
<span>{postrow.POST_DATE}</span><!-- ENDIF -->
 



Б) Для стилей на основе сабсильвер2 открыть указанный ранее шаблон и найти
<!-- BEGIN postrow -->
   <table class="tablebg" width="100%" cellspacing="1">
 

Заменить найденное на
<!-- BEGIN postrow -->
   <table class="tablebg" width="100%" cellspacing="1" <!-- IF postrow.S_FIRST_ROW  && PAGE_NUMOO eq 1 --> itemscope itemtype="http://schema.org/ScholarlyArticle" <!-- ENDIF -->>
 

Найти
<div class="postbody">{postrow.MESSAGE}</div>
 

Заменить найденное на
<div class="postbody" <!-- IF postrow.S_FIRST_ROW  && PAGE_NUMOO eq 1 -->itemprop="articleBody" <!-- ENDIF -->>{postrow.MESSAGE}</div>
 

Найти
<b class="postauthor"<!-- IF postrow.POST_AUTHOR_COLOUR --> style="color: {postrow.POST_AUTHOR_COLOUR}"<!-- ENDIF -->
 

Вставить после найденного
<!-- IF postrow.S_FIRST_ROW  && PAGE_NUMOO eq 1 -->itemprop="author" <!-- ENDIF -->
 

Найти
<a href="#p{postrow.POST_ID}">{postrow.POST_SUBJECT}</a>
 

Заменить на
<a href="#p{postrow.POST_ID}"><span <!-- IF postrow.S_FIRST_ROW  && PAGE_NUMOO eq 1 -->itemprop="headline" <!-- ENDIF -->>{postrow.POST_SUBJECT}</span></a>
 

Найти
{postrow.POST_DATE}
 

Заменить найденное на
 
<!-- IF not S_USER_LOGGED_IN --><span <!-- IF postrow.S_FIRST_ROW  && PAGE_NUMOO eq 1 -->itemprop="datePublished" <!-- ENDIF -->>{postrow.POST_DATE1}</span><!-- ELSE -->
<span>{postrow.POST_DATE}</span><!-- ENDIF -->
 



Открыть корневой viewtopic.php и найти
'POST_DATE'         => (!$row['post_created']) ? $user->format_date($row['post_time'], false, ($view == 'print') ? true : false) : $user->format_date($row['post_created'], false, ($view == 'print') ? true : false),
 

Вставить после найденного
'POST_DATE1'         => date('Y-m-d', $row['post_time']),
 

Открыть includes/functions_display.php и найти
return '<img src="' . (str_replace(' ', '%20', $avatar_img)) . '" width="' . $avatar_width . '" height="' . $avatar_height . '" alt="' . ((!empty($user->lang[$alt])) ? $user->lang[$alt] : $alt) . '" />';
 

Заменить найденное на
return '<img src="' . (str_replace(' ', '%20', $avatar_img)) . '" width="' . $avatar_width . '" height="' . $avatar_height . '" alt="' . ((!empty($user->lang[$alt])) ? $user->lang[$alt] : $alt) . '" itemprop="image"/>';
 


Полезные ссылки
1. Валидатор Гугла
Пожалуйста Зарегистрируйтесь чтобы увидеть ссылку

2. Валидатор Яндекса
Пожалуйста Зарегистрируйтесь чтобы увидеть ссылку

3. Русскоязычный сайт по семантической разметке
Пожалуйста Зарегистрируйтесь чтобы увидеть ссылку


_________________
Подпись:
-_- -_-
На вопросы, связанные с phpBB, по ЛС не отвечаю !!!

Теги темы
Семантическая разметка phpbb3
          Вернуться наверх  
 


Аватар пользователя

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


_________________
Подпись:
три головы - это хорошо. но как же трудно придти к согласию...
* белк может помочь, но ставить за кого-то моды не будет... ни платно, ни бесплатно. *
          Вернуться наверх  
 


Аватар пользователя

Угу, пока что только это))


_________________
Подпись:
-_- -_-
На вопросы, связанные с phpBB, по ЛС не отвечаю !!!
          Вернуться наверх  
 


Аватар пользователя

Понятно, спасибо. А сколько ждать? сутки? неделю? Чтобы понять, что это работает.


_________________
Подпись:
три головы - это хорошо. но как же трудно придти к согласию...
* белк может помочь, но ставить за кого-то моды не будет... ни платно, ни бесплатно. *
          Вернуться наверх  
 


Аватар пользователя

Честно хз, глядите в панели вебмастера гугла, тас будет нужная информация


_________________
Подпись:
-_- -_-
На вопросы, связанные с phpBB, по ЛС не отвечаю !!!
          Вернуться наверх  
 


Аватар пользователя

спасибо. буду посмотреть. а то хз слишком долго. :-00):


_________________
Подпись:
три головы - это хорошо. но как же трудно придти к согласию...
* белк может помочь, но ставить за кого-то моды не будет... ни платно, ни бесплатно. *
          Вернуться наверх  
 


Аватар пользователя

Для быстрой сематической разметки в панели Гугл есть Маркер.... Инструменты для веб-мастеров/Вид в поиске/Маркер С помощь Маркера можно легко и быстро разметить форум человеку, который плохо разбирается в правке кода. Правда я так понял, эта разметка будет восприниматься в основном Гуглем..... но и это уже хорошо....


          Вернуться наверх  
 


Аватар пользователя

Яндекс тоже поддерживает вроде эту разметку


_________________
Подпись:
-_- -_-
На вопросы, связанные с phpBB, по ЛС не отвечаю !!!
          Вернуться наверх  
 


Аватар пользователя

Разметку поддерживает, а правки маркера гугл, не уверен. Я в коде после маркера особой разметки (которая понятна всем поисковикам) не заметил.


          Вернуться наверх  
 


Аватар пользователя

Ясень пень, у него же нет доступа к файлам)) Потому для надежности лучше все вручную в коде прописать))


_________________
Подпись:
-_- -_-
На вопросы, связанные с phpBB, по ЛС не отвечаю !!!
          Вернуться наверх  
 


Аватар пользователя

Почти 2 года прошло спустя момента написания статьи, вроде как и положительно все в результатах поиска, но вот валидатор от яндекса ругается на некоторые моменты, гугл же видит порядка 500 страниц с разметкой, но тем то на форуме у меня больше в 3 раза, странное дело. Поглядел по разметке, за это время ничего не изменилось вроде.

Ктонибудь отслеживал у себя изменения?

Если актуально (хотя бы пара человек отпишется ) то капитально проверю форум и эту инструкцию + изучу разметку хлебных крошек и напишу статью на выходных, но опять таки если это востребовано пользователями нашего форума


_________________
Подпись:
-_- -_-
На вопросы, связанные с phpBB, по ЛС не отвечаю !!!
          Вернуться наверх  
 


Аватар пользователя

Поправил последний пункт инструкции, изначально в секцию headline брался не заголовок, а ссылка. Теперь все гуд


_________________
Подпись:
-_- -_-
На вопросы, связанные с phpBB, по ЛС не отвечаю !!!
          Вернуться наверх  
 


Аватар пользователя

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


_________________
Подпись:
-_- -_-
На вопросы, связанные с phpBB, по ЛС не отвечаю !!!
          Вернуться наверх  
 


Аватар пользователя

У меня тоже стиль не стандартный. Дату вроде подхватывает валидатор, но выдаёт это поле как ошибку. Аватару не видит паразит! :du_ma_et:
Пожалуйста Зарегистрируйтесь чтобы увидеть ссылку


Сообщение добавлено... спустя 50 минут 58 секунд:
Сергей! А вот что выдаёт валидатор яндекса.
ПРЕДУПРЕЖДЕНИЕ: значение "31 июл 2015, 15:42" в поле datePublished не является корректными значением даты. Дата должна быть в формате ISO 8601


          Вернуться наверх  
 


Аватар пользователя

Да я это и имел ввиду, будем думать, в админке дату надо другого формата в настройках ставить, а какого - еще не нашел. С аватарой видимо пролет, нужно внутрь тега img прописывать код, а шаблон этого не дает, надо глубоко ковырять php код форума


_________________
Подпись:
-_- -_-
На вопросы, связанные с phpBB, по ЛС не отвечаю !!!
          Вернуться наверх  
 


Аватар пользователя

Понял. Все правки пака убрал! :-(--


          Вернуться наверх  
 


Случайный аватар. Пользователю рекомендуется загрузить свой аватар в Настройках профиля

DeaDRoMeO писал(а):

Итак, исходя и такой логики - в первом посте - больше всего информации, значит будет делать первый пост главным. Нам надо сделать условие только для первого поста, первого на первой странице, остальные - не в счет. Открываем viewtopic.php и находим


Если сообщения равнозначные - пропускаем этот пункт , а далее всё предложенной инструкции?


          Вернуться наверх  
 


Аватар пользователя

Если пропустим этот пункт, то условия не будут работать и вообще разметки не будет


_________________
Подпись:
-_- -_-
На вопросы, связанные с phpBB, по ЛС не отвечаю !!!
          Вернуться наверх  
 


Случайный аватар. Пользователю рекомендуется загрузить свой аватар в Настройках профиля

Очень печально. :ups:


          Вернуться наверх  
 


Аватар пользователя

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


_________________
Подпись:
-_- -_-
На вопросы, связанные с phpBB, по ЛС не отвечаю !!!
          Вернуться наверх  
 


Случайный аватар. Пользователю рекомендуется загрузить свой аватар в Настройках профиля

Здравствуйте. Работа над ошибками будет опубликована?


          Вернуться наверх  
 
 
Начать новую тему Ответить на тему


Дополнительные возможности

  Похожие темы  Автор  Ответов  Просмотров  Последнее сообщение 
Аватар пользователя Семантическая разметка phpBB3: Хлебные крошки
Тема о семантической разметке хлебных крошек phpBB3

DeaDRoMeO

11

810

Аватар пользователя

11 апр 2016, 19:10

Erenbur

Аватар пользователя Случайно удалила темы с форума, как восстановить?

Милена

3

710

Аватар пользователя

04 янв 2015, 11:02

DeaDRoMeO

Аватар пользователя Закрытые темы всегда внизу phpBB3
Закрытые темы всегда внизу phpBB3 - модификация для phpbb3, которая опускает все закрытые темы вниз списка тем, очень простой и логичный мод

DeaDRoMeO

17

1016

Аватар пользователя

14 ноя 2017, 08:25

DeaDRoMeO

Аватар пользователя NV recent topics phpbb3 (последние темы)
NV recent topics - модификация для phpbb3, выводящая список последних активных тем в спец.блоке на страницы форума

DeaDRoMeO

204

9914

Аватар пользователя

17 янв 2016, 10:11

Чародейка

Аватар пользователя AOS Topic Statistics phpbb3 (подписчики и просмотры темы)
AOS Topic Statistics - модификация для phpbb3, добавляющая на страницу просмотра тем информацию о количестве подписчиков и просмотров конкретной темы.

DeaDRoMeO

84

6196

Аватар пользователя

19 июл 2017, 13:19

DeaDRoMeO

Оставить свой комментарий

Поделиться темой с помощью

Ссылки на тему

Прямая ссылка:
BB-код для форумов, сайтов, блогов:
HTML ссылка:
 


cron

Самая неформальная поддержка phpBB :P