Я изучал эту тему в течение нескольких дней и нашел много противоречивых предложений в отношении индексации поиска. Я работаю над проектом, в котором много разных страниц - от простых описаний продуктов до всесторонней пользовательской документации.
Я разбил этот вопрос на разделы, поскольку считаю, что это сделает его более полезным для будущих читателей этого вопроса.
Некоторые из моих выводов
Некоторые веб-сайты, похоже, обрисовали в общих чертах следующие документы:
1. Programmer's Guide (https://www.dartlang.org/docs/)
1. Getting Started
2. Concepts
1. Libraries
2. Fundamental classes
etc.
Мне интересно, что в приведенном выше примере не используется <nav>
элемент с подходящим заголовком. Мне нравится простота схемы и, будучи Google, я уверен, что они знают, что делают, когда дело доходит до этого.
Но я запутался, поскольку в приведенном выше наброске не упоминается «Дарт». Кажется, единственное упоминание о «Dart» в семантическом смысле находится в основном <title>
элементе документа «Руководство программиста | Dart: Структурированные веб-приложения».
MDN (Mozilla Developer Network) - еще один блестящий пример веб-сайта, который следует этому принципу. Многие из <h1>
заголовков обеспечивают полный контекст ( разделы и схемы документа HTML5 ):
1. Sections and Outlines of an HTML5 Document
1. Untitled Section (nav)
2. Untitled Section (nav)
3. Structure of a Document in HTML 4
4. Problems Solved by HTML5
В то время как другие не имеют большого смысла вне контекста ( устаревшие методы следует избегать ). Например, относится ли следующий набросок HTML5 к CSS, HTML5 или C # ... с одним лишь наброском документа, кто знает!
1. Obsolete practices to avoid
1. Untitled Section (nav)
2. Untitled Section (nav)
3. Doctype
4. <meta> element and charset attribute
Что еще хуже, что, если MDN содержит 2 темы с одинаковым (или очень похожим) названием «Устаревшие практики, которых следует избегать», где одна часть является частью их руководства по CSS, а другая - частью их руководства по HTML ...
На другом конце спектра веб-сайты, похоже, используют <body>
заголовок основного уровня для названия продукта (Foo) или контейнера тем (Руководство пользователя для Foo). Где все последующие страницы затем использовать <h2>
для фактического заголовка страницы.
Вопрос
Как поисковые системы выводят контекст веб-страницы, подобной тем, которые можно найти на сайте MDN, используя DOM и схему HTML5?
Как правильно разметить следующую страницу HTML5, чтобы Google мог проиндексировать страницу в подходящем контексте? Это включает в себя использование <title>
, <header>
и <h1>
элементы.
- Название компании
- наименование товара
- Гид пользователя
- Начиная
Наиболее значимый заголовок в HTML, который просматривается в веб-браузере, должен представлять контекст всего веб-сайта (название компании или название продукта), набор тем (руководство пользователя) или актуальную тему в руке (начало работы) ?
Моя лучшая догадка
<!DOCTYPE html>
<html>
<head>
<title>Getting Started | User Guide | Product Name - Company Name</title>
</head>
<body>
<header role="banner"> <!-- Note: Lack of <h1> in here -->
<a id="logo" href="http://example.com">Company Name</a>
<nav>
<h1>Site Navigation</h1>
<ul> ... </ul>
</nav>
</header>
<main role="main">
<div class="product-name">Product Name</div>
<div class="document">User Guide</div>
<h1>Getting Started</h1>
<p>blah</p>
</main>
</body>
</html>
Ведущие к контуру:
1. Getting Started
<title>
обеспечение контекста. Например, является ли плохой идеей включать одно и то же <h1>User Guide for Ubermachine</h1>
на каждой странице, где представлен заголовок темы <h2>Getting Started</h2>
... или следует набросок начать с <h1>Getting Started</h1>
сопровождающего, <title>Getting Started | User Guide for Ubermachine</title>
чтобы обеспечить полезный контекст для поисковых систем. Это вопрос SEO.
<title>
предоставляет ли достаточно контекст.