Я пытаюсь использовать микроданные, чтобы помочь поисковым системам определить все содержимое моего веб-сайта так, как оно предназначено для просмотра.
У меня есть следующая разметка:
<!DOCTYPE html>
<html lang="en" dir="ltr" itemscope itemtype="http://schema.org/WebPage">
<head>
<link itemprop="url" href="https://example.com/link-to-canonical-url-of-this-page" />
</head>
<body>
<div itemprop="isPartOf" itemscope itemtype="https://schema.org/WebSite">
<link itemprop="url" href="https://example.com" />
</div>
<header itemscope itemtype="https://schema.org/WPHeader">
<ul class="list-unstyled mb-0 pb-0 mt-2" itemprop="citation" itemscope="" itemtype="http://www.schema.org/SiteNavigationElement">
<li>
<a title="" itemprop="url" href="/some-uri" class="btn btn-link text-white" style="font-size: larger;">
<strong itemprop="name">Popular Searches</strong>
</a>
<meta itemprop="position" content="1">
</li>
</ul>
</header>
<main role="main">
</main>
<footer itemscope itemtype="https://schema.org/WPFooter">
<ul class="list-unstyled mb-0 pb-0 mt-2" itemprop="citation" itemscope="" itemtype="http://www.schema.org/SiteNavigationElement">
<li>
<a title="" itemprop="url" href="/some-uri" class="btn btn-link text-white" style="font-size: larger;">
<strong itemprop="name">Popular Searches</strong>
</a>
<meta itemprop="position" content="1">
</li>
</ul>
</footer>
</body>
</html>
Нокогда я смотрю на вышеприведенное в Инструмент тестирования структурированных данных , он обнаруживает все, что я задумал, за исключением положения каждого элемента.
Инструмент обнаруживает данные как три разных узла. Поскольку все эти узлы являются частью WebSite
или WebPage
, я надеюсь как-то связать верхний и нижний колонтитулы внутри узла WebPage
.
Как я могу указать, что WPHeader
и WPFooter
являются частью WebPage
узла?
Обновление
Я нашел способ объединить все 3 узла в основной WebPage
. Однако для этого я использовал несколько mainContentOfPage
или mainEntity
. Я не уверен, если mainContentOfPage
является правильным способом сделать это. Это противоречит названию, так как всегда должен быть основной контент одной страницы.
Вот обновленная HTML-разметка:
<!DOCTYPE html>
<html lang="en" dir="ltr" itemscope itemtype="http://schema.org/WebPage">
<head>
<link itemprop="url" href="https://example.com/link-to-canonical-url-of-this-page" />
</head>
<body itemprop="mainContentOfPage">
<div itemprop="isPartOf" itemscope itemtype="https://schema.org/WebSite">
<link itemprop="url" href="https://example.com" />
</div>
<header itemprop="mainContentOfPage" itemscope itemtype="https://schema.org/WPHeader">
<ul class="list-unstyled mb-0 pb-0 mt-2" itemprop="mainEntity" itemscope="" itemtype="http://www.schema.org/SiteNavigationElement">
<li>
<a title="" itemprop="url" href="/some-uri" class="btn btn-link text-white" style="font-size: larger;">
<strong itemprop="name">Popular Searches</strong>
</a>
<meta itemprop="position" content="1">
</li>
</ul>
</header>
<main role="main">
</main>
<footer itemprop="mainContentOfPage" itemscope itemtype="https://schema.org/WPFooter">
<ul class="list-unstyled mb-0 pb-0 mt-2" itemprop="mainEntity" itemscope="" itemtype="http://www.schema.org/SiteNavigationElement">
<li>
<a title="" itemprop="url" href="/some-uri" class="btn btn-link text-white" style="font-size: larger;">
<strong itemprop="name">Popular Searches</strong>
</a>
<meta itemprop="position" content="1">
</li>
</ul>
</footer>
</body>
</html>