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

Форум без пользователей, как машина без колес. Данный подфорум призван помочь ответить вам на вопросы - форум? Чем привлечь пользователей ? Как продвинуть свой ресурс в поисковиках ?
Обсуждаем все, что с этим связано, делимся секретами и решаем вместе проблемы раскрутки.

Модераторы: Vl@d1m1r, Lorem Ipsum, Atlas

Правила форума
----
Ответить
Аватара пользователя
DeaDRoMeO
Старожил Форума
Старожил Форума
Сообщения: 16763
Стаж: 13 лет
Откуда: Витебск
Контактная информация:

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

Сообщение DeaDRoMeO »

Статья обновлена на 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. Валидатор Гугла
http://www.google.com/webmasters/tools/richsnippets
2. Валидатор Яндекса
http://webmaster.yandex.ru/microtest.xml
3. Русскоязычный сайт по семантической разметке
http://ruschema.org
На вопросы, связанные с phpBB, по ЛС не отвечаю !!!
#1
Аватара пользователя
ursego
Свой на все 100
Свой на все 100
Сообщения: 478
Стаж: 11 лет 2 месяца
Откуда: Днепропетровск
Контактная информация:

Семантическая разметка phpbb3

Сообщение ursego »

DeaDRoMeO писал(а): те кому интересна данная тема, просьба как нибудь отметиться в комментах, дабы я понял стоит ли писать далее про это
Бздынц!
#2
Аватара пользователя
Lorem Ipsum
Прописался тут надолго
Прописался тут надолго
Сообщения: 1974
Стаж: 11 лет 7 месяцев
Контактная информация:

Семантическая разметка phpbb3

Сообщение Lorem Ipsum »

Шо за вопросы? Конечно писать!
Я уже прошел тот период когда можно было забывать про очистку кеша ©salexcorp
#3
Аватара пользователя
DeaDRoMeO
Старожил Форума
Старожил Форума
Сообщения: 16763
Стаж: 13 лет
Откуда: Витебск
Контактная информация:

Семантическая разметка phpbb3

Сообщение DeaDRoMeO »

Хорошо, что не мне одному это интересно))Дописал часть статьи, читаем, ознакомляемся, критикуем конечно же. Тяжеловато писать о новом, получая по ходу опыт))
На вопросы, связанные с phpBB, по ЛС не отвечаю !!!
#4
Аватара пользователя
lex0013
Заглянул на огонек
Заглянул на огонек
Сообщения: 43
Стаж: 10 лет 7 месяцев
Откуда: Полтава
Контактная информация:

Семантическая разметка phpbb3

Сообщение lex0013 »

Отличная статья, я сделал разметку для сайта на worpress , через недельку показы в гугле выросли в х3 )
походу Семантику гугл очень любит .
#5
Аватара пользователя
DeaDRoMeO
Старожил Форума
Старожил Форума
Сообщения: 16763
Стаж: 13 лет
Откуда: Витебск
Контактная информация:

Семантическая разметка phpbb3

Сообщение DeaDRoMeO »

Наверное)) Я за своими показами не следил к сожалению, но рост есть
На вопросы, связанные с phpBB, по ЛС не отвечаю !!!
#6
Аватара пользователя
Олег В
Активно общаюсь
Активно общаюсь
Сообщения: 340
Стаж: 11 лет
Контактная информация:

Семантическая разметка phpbb3

Сообщение Олег В »

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:
#7
Аватара пользователя
boroda-max
Активно осваиваю Форум
Активно осваиваю Форум
Сообщения: 180
Стаж: 11 лет 4 месяца
Откуда: CCCР. Ленинград
Контактная информация:

Семантическая разметка phpbb3

Сообщение boroda-max »

Доброго времени суток. Олег В, проверяйте правку.... а вот кириллицу в чистом виде - вообще не рекомендовал бы добавлять... лучше через языковые переменные (и работать не будет так как снесли itemprop="author" (и др)- то есть само обьяснение роботу - кто автор.....) - проверяйте страницу сразу через валидатор http://webmaster.yandex.ru/microtest.xml

это эта Тема., а вот Ваша Тема...
#8
Аватара пользователя
Олег В
Активно общаюсь
Активно общаюсь
Сообщения: 340
Стаж: 11 лет
Контактная информация:

Семантическая разметка phpbb3

Сообщение Олег В »

boroda-max писал(а):проверяйте правку...
Доброго времени суток, Дружище! Дело в том что я изначально все моды ставлю на локальный сервер и только убедившись в его правильной работе, ставлю на реальный форум! Поэтой причине, а вернее изза отсутствия пака ещё Семантической разметки на живом форуме, валидатор ничего не обнаружил.
Скажите мне. Строки itemprop="author" и itemprop="headline" должны быть изначально скрыты?? Правки делаю вроде правильно, хоть и стиль у меня с не такими какие нужно найти строками и после которых нужно добавить новые. Может кто поможет правильно упаковать в файл нужные строки?? Буду очень благодарен!!! :uch_tiv:
В вложении мой файл viewtopic_body . Оболочка сабсильвер 2
Вложения
viewtopic_body.rar
(5.82 КБ) 17 скачиваний
#9
Аватара пользователя
boroda-max
Активно осваиваю Форум
Активно осваиваю Форум
Сообщения: 180
Стаж: 11 лет 4 месяца
Откуда: CCCР. Ленинград
Контактная информация:

Семантическая разметка phpbb3

Сообщение boroda-max »

я поклонник просильвера - и могу сказать - что все работает... саб - поправил (на мой взгляд), хотя есть сомнение по поводу

Код: Выделить всё

<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 КБ) 18 скачиваний
#10
Аватара пользователя
Олег В
Активно общаюсь
Активно общаюсь
Сообщения: 340
Стаж: 11 лет
Контактная информация:

Семантическая разметка phpbb3

Сообщение Олег В »

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


Сообщение добавлено... спустя 12 минут 43 секунды:
а вот как на чистом сабсильвере. Все правки правильны...
#11
Аватара пользователя
boroda-max
Активно осваиваю Форум
Активно осваиваю Форум
Сообщения: 180
Стаж: 11 лет 4 месяца
Откуда: CCCР. Ленинград
Контактная информация:

Семантическая разметка phpbb3

Сообщение boroda-max »

Олег В, а на чистом сабе, попробуйте пожалуйста сделать правку не после

Код: Выделить всё

<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>
создавать, из-за модификации шаблона....), должно получиться ;)
#12
Аватара пользователя
Олег В
Активно общаюсь
Активно общаюсь
Сообщения: 340
Стаж: 11 лет
Контактная информация:

Семантическая разметка phpbb3

Сообщение Олег В »

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:
#13
Аватара пользователя
Олег В
Активно общаюсь
Активно общаюсь
Сообщения: 340
Стаж: 11 лет
Контактная информация:

Семантическая разметка phpbb3

Сообщение Олег В »

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

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

Сообщение добавлено... спустя 4 минуты 53 секунды:
Залил на сервер копии файлов без правок. Переживаю, как бы не навредить окончательно.((
#14
Аватара пользователя
boroda-max
Активно осваиваю Форум
Активно осваиваю Форум
Сообщения: 180
Стаж: 11 лет 4 месяца
Откуда: CCCР. Ленинград
Контактная информация:

Семантическая разметка phpbb3

Сообщение boroda-max »

Олег В, осталось - немного - "подвигать" код

Код: Выделить всё

itemprop="headline"
, он по идее должен быть рядом с кодом , но насколько я помню - какой то модификацией у Тебя снесено

Код: Выделить всё

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

Семантическая разметка phpbb3

Сообщение Олег В »

Есть!!! Заработало!!!!!!!!!!!!! :ya_hoo_oo: :dan_ser: :al_kana_ft:
#16
Аватара пользователя
boroda-max
Активно осваиваю Форум
Активно осваиваю Форум
Сообщения: 180
Стаж: 11 лет 4 месяца
Откуда: CCCР. Ленинград
Контактная информация:

Семантическая разметка phpbb3

Сообщение boroda-max »

Олег В, Ура! С наступающим :-00):
#17
Аватара пользователя
Олег В
Активно общаюсь
Активно общаюсь
Сообщения: 340
Стаж: 11 лет
Контактная информация:

Семантическая разметка phpbb3

Сообщение Олег В »

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

#18
Аватара пользователя
boroda-max
Активно осваиваю Форум
Активно осваиваю Форум
Сообщения: 180
Стаж: 11 лет 4 месяца
Откуда: CCCР. Ленинград
Контактная информация:

Семантическая разметка phpbb3

Сообщение boroda-max »

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

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

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

Транслируемые данные должны быть опубликованы на сайте клиента по 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>, каждый из которых – отдельный для каждого объявления
#19
step-83
Заглянул на огонек
Заглянул на огонек
Сообщения: 1
Стаж: 10 лет 2 месяца

Семантическая разметка phpbb3

Сообщение step-83 »

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

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