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


----

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

 Сообщение Семантическая разметка phpBB3: Темы форума 
#1 

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

Статья обновлена на 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
          Вернуться наверх  
 

#2 

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

DeaDRoMeO писал(а):

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

Бздынц!


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

#3 

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

Шо за вопросы? Конечно писать!


_________________
Подпись:
Я уже прошел тот период когда можно было забывать про очистку кеша ©salexcorp
          Вернуться наверх  
 

#4 

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

Хорошо, что не мне одному это интересно))Дописал часть статьи, читаем, ознакомляемся, критикуем конечно же. Тяжеловато писать о новом, получая по ходу опыт))


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

#5 

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

Отличная статья, я сделал разметку для сайта на worpress , через недельку показы в гугле выросли в х3 )
походу Семантику гугл очень любит .


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

#6 

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

Наверное)) Я за своими показами не следил к сожалению, но рост есть


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

#7 

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

DeaDRoMeO писал(а):

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

У меня такой вопрос. После проделанных правок, в каждом первом сообщении темы появились доп. метки в виде itemprop="author" под ником создавшего тему и itemprop="headline" перед названием темы в сообщении. Вот пример
Пожалуйста Зарегистрируйтесь чтобы увидеть ссылку

Изменил не много ранее добавленные строки
<!-- IF postrow.S_FIRST_ROW  && PAGE_NUMOO eq 1 -->itemprop="author" <!-- ENDIF -->
<a <!-- IF postrow.S_FIRST_ROW  && PAGE_NUMOO eq 1 -->itemprop="headline" <!-- ENDIF --> href="#p{postrow.POST_ID}">{postrow.POST_SUBJECT}</a>
 

На такой вариант
<br><!-- IF postrow.S_FIRST_ROW  && PAGE_NUMOO eq 1 -->"Автор" <!-- ENDIF -->
<a <!-- IF postrow.S_FIRST_ROW  && PAGE_NUMOO eq 1 -->"Заголовок" <!-- ENDIF --> href="#p{postrow.POST_ID}">{postrow.POST_SUBJECT}</a>
 
получилось так:

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


Вроде как всё красиво, но будет ли оно работать в таком виде с поисковиками? Вот в чём мой вопрос! :du_ma_et:

Сообщение добавлено... спустя 23 минуты 32 секунды:
Выделил ещё всё это дело красным , чтоб красивше смотрелось. :-00):
Пожалуйста Зарегистрируйтесь чтобы увидеть ссылку


Сообщение добавлено... спустя 5 минут 25 секунд:
Или всё оставить как было изначально, но разрешить показ этих меток только для bootов ??? :ny_tik:


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

#8 

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

Доброго времени суток. Олег В, проверяйте правку.... а вот кириллицу в чистом виде - вообще не рекомендовал бы добавлять... лучше через языковые переменные (и работать не будет так как снесли itemprop="author" (и др)- то есть само обьяснение роботу - кто автор.....) - проверяйте страницу сразу через валидатор
Пожалуйста Зарегистрируйтесь чтобы увидеть ссылку


это эта Тема., а вот Ваша Тема...


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

#9 

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

boroda-max писал(а):

проверяйте правку...

Доброго времени суток, Дружище! Дело в том что я изначально все моды ставлю на локальный сервер и только убедившись в его правильной работе, ставлю на реальный форум! Поэтой причине, а вернее изза отсутствия пака ещё Семантической разметки на живом форуме, валидатор ничего не обнаружил.
Скажите мне. Строки itemprop="author" и itemprop="headline" должны быть изначально скрыты?? Правки делаю вроде правильно, хоть и стиль у меня с не такими какие нужно найти строками и после которых нужно добавить новые. Может кто поможет правильно упаковать в файл нужные строки?? Буду очень благодарен!!! :uch_tiv:
В вложении мой файл viewtopic_body . Оболочка сабсильвер 2


Вложения:
viewtopic_body.rar [5.82 KiB]
Скачиваний: 2
          Вернуться наверх  
 


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

я поклонник просильвера - и могу сказать - что все работает... саб - поправил (на мой взгляд), хотя есть сомнение по поводу
<b class="postauthor"<!-- IF postrow.POST_AUTHOR_COLOUR --> style="color: {postrow.POST_AUTHOR_COLOUR}"<!-- ENDIF -->
 
 
, проверить не могу - у меня сыпет ошибку (template->_tpl_load_file(): File ./styles/subsilver2/template/shout_body.html does not exist or is empty) в виду отсутствия оного.... то есть проверяйте, пишите, правьте....


Вложения:
Комментарий к файлу: вариант правки
viewtopic_body.zip [6.19 KiB]
Скачиваний: 3
          Вернуться наверх  
 


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

boroda-max, Ситуация осталась той же. Даже не много хуже. В последующих сообщениях также появился глюк. Ээээх
Пожалуйста Зарегистрируйтесь чтобы увидеть ссылку


Сообщение добавлено... спустя 12 минут 43 секунды:
а вот как на чистом сабсильвере. Все правки правильны...
Пожалуйста Зарегистрируйтесь чтобы увидеть ссылку


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


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

Олег В, а на чистом сабе, попробуйте пожалуйста сделать правку не после
<b class="postauthor"<!-- IF postrow.POST_AUTHOR_COLOUR --> style="color: {postrow.POST_AUTHOR_COLOUR}"<!-- ENDIF -->
 
- а
<b class="postauthor"<!-- IF postrow.POST_AUTHOR_COLOUR --> style="color: {postrow.POST_AUTHOR_COLOUR}"<!-- ENDIF -->>
 
? что будет?

Сообщение добавлено... спустя 8 минут 52 секунды:
Олег В писал(а):

а вот как на чистом сабсильвере. Все правки правильны.

но ведь сработало - "заголовок сообщения" - там получается в первом скрине - вставляя код - мы не даем закрыться тегу... то есть код разметки надо подвинуть за скобку
 
, и с Автором сообщения то же самое...- как на чистом получиться - можно будет по аналогии "вживлять" в модифицированный (мне в просильвере пришлось новый
<div></div>
 
создавать, из-за модификации шаблона....), должно получиться ;)


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


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

boroda-max,
Спасибо Дружище за советы. Завтра попробую. Сегодня ни как. Отпишусь после экспериментов....


Сообщение добавлено... спустя 24 минуты 34 секунды:
Извиняюсь. Всё же попробовал на сабсильвере. Вставил код
<!-- IF postrow.S_FIRST_ROW  && PAGE_NUMOO eq 1 -->itemprop="author" <!-- ENDIF -->
 
в найденую строку
<b class="postauthor"<!-- IF postrow.POST_AUTHOR_COLOUR --> style="color: {postrow.POST_AUTHOR_COLOUR}"<!-- ENDIF -->
 
 
получилось так
<b class="postauthor"<!-- IF postrow.S_FIRST_ROW  && PAGE_NUMOO eq 1 -->itemprop="author" <!-- ENDIF --><!-- IF postrow.POST_AUTHOR_COLOUR --> style="color: {postrow.POST_AUTHOR_COLOUR}"<!-- ENDIF -->>{postrow.POST_AUTHOR}</b>
 

В сообщении доп. надписей нет! Но не знаю. Будет ли оно работать в таком виде? Вобщем так. Завтра попробую на своём стиле поиграть с установкой этих строк. Как только в сообщении надписи пропадут, поставлю такой вариан на живой форум и попробую валидатором проверить разметку.
boroda-max, Скажите! А разметка эта должна сразу отобразиться в валидаторе (ну естественно если все правки правильны), или нужно какое то время ждать?? :du_ma_et:


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


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

Пол ночи колдовал над кодом. В сообщениях разметок уже не видно. В валидаторе заданное описание отображается, но другая часть разметки нет. Ээээх.
Пожалуйста Зарегистрируйтесь чтобы увидеть ссылку

Блин. Угораздило же меня связаться с этим стилем. Всё по неопытности и не знанию. С другой стороны, все эти неприятности, заставляют сидеть и вникать,ища правильные пути решения задач.
Помогайте братцы добить проблему. Сам не вытяну! :ny_tik:

Сообщение добавлено... спустя 4 минуты 53 секунды:
Залил на сервер копии файлов без правок. Переживаю, как бы не навредить окончательно.((


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


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

Олег В, осталось - немного - "подвигать" код
itemprop="headline"
 
, он по идее должен быть рядом с кодом
 
, но насколько я помню - какой то модификацией у Тебя снесено
<a href="#p{postrow.POST_ID}">{postrow.POST_SUBJECT}</a>
 
то есть - надо "сдвигать" расположение кода по аналогии.....(навредить - не навредишь - в phpBB3 по умолчанию разметки вообще никакой нету, а тут - Ты помогаешь роботу понять содержимое "по стандартной формуле".... )


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


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

Есть!!! Заработало!!!!!!!!!!!!! :ya_hoo_oo: :dan_ser: :al_kana_ft:
Пожалуйста Зарегистрируйтесь чтобы увидеть ссылку


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


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

Олег В, Ура! С наступающим :-00):


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


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

boroda-max, Спасибо Дружище за помощь. Тебя тоже с наступающим или уже наступившим. :dr_ink:
Теперь у меня возник другой вопрос. Наверное он не для этой темы, но я по быстрому! ))
Обнаружил что не работает Валидатор XML-фидов. Подскажите как это исправить. Или отправте в нужную тему,где есть ответы! :uch_tiv:

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


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


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

Олег В, Не обижайся НО! судя по скрину - Ты пытаешься проверить разметку для автокаталога?
Описание программы и правила участия
Как стать партнером Яндекс.Авто?

Технические требования

Метод передачи

Транслируемые данные должны быть опубликованы на сайте клиента по URL-адресу, согласованному с Яндексом, и доступны по протоколу HTTP. В случае изменения URL-адреса необходимо внести соответствующие изменения в Яндекс.Вебмастере .
Допускается публикация данных в упакованном виде с помощью алгоритма GNU ZIP (расширение . gz)
Для снижения нагрузки, создаваемой роботом Яндекс.Авто на ваш сайт, и сокращения времени попадания новых данных в выдачу сервиса рекомендуем воспользоваться одним из http-заголовков ETag или Last-Modified , правильное использование которых позволит роботу сравнивать текущую версию XML-файла с последней загруженной.
Формат передаваемых данных

Передаваемые данные должны быть оформлены в разметке XML, документ должен иметь следующую структуру:
стандартный заголовок
<?xml version="1.0" encoding="windows-1251"?>
сложный элемент <auto-catalog>. <auto-catalog> должен состоять из элемента <creation-date>, содержащего дату создания фида, и элемента <host>, содержащего имя хоста доски объявлений сайта–партнера
сложный элемент <offers>, содержащий информацию об автообъявлениях. Элемент <offers> включает в себя элементы <offer>, каждый из которых – отдельный для каждого объявления


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


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

На своем
Пожалуйста Зарегистрируйтесь чтобы увидеть ссылку
сделал немного проще.
Сущность взял CreativeWork т.к. на трекере в основном материал творческой направленности (книги, видео, аудио)
Далее, я не стал выделять первое сообщение как главное, а просто задал itemprop="text" только для первого сообщения. В том числе добавил так же в семантическую разметку картинки. Правда с картинками возникли проблемы, в частности если картинка загружена на форум, то валидатор видит ссылку вместе с идентификатором сессии (sid), если картинка внешняя то проблем нет. В некоторых темах так же есть ссылка на видео с youtube задал семантику через bb код.

В связи с тем, что материалов не так много сейчас про семантическую разметку прошу проверить все ли правильно я разметил.


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


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

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

DeaDRoMeO

11

792

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

11 апр 2016, 19:10

Erenbur

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

Милена

3

707

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

04 янв 2015, 11:02

DeaDRoMeO

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

DeaDRoMeO

17

1000

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

14 ноя 2017, 08:25

DeaDRoMeO

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

DeaDRoMeO

204

9866

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

17 янв 2016, 10:11

Чародейка

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

DeaDRoMeO

84

6165

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

19 июл 2017, 13:19

DeaDRoMeO

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

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

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

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


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