Przejrzałem dane strukturalne artykułu zaproponowane przez Google i zobaczyłem, że istnieją nowe wymagane i zalecane pola, których nie było w zeszłym tygodniu. Tutaj jest link:
https://developers.google.com/structured-data/rich-snippets/articles
Pierwsza właściwość na liście to:
- mainEntityOfPage. @ id (zalecane)
Nie rozumiem, jaka musi być wartość nieruchomości? Co to za właściwość? Czy to link do:
.. lub link do aktualnego postu na blogu, taki jak:
Mają to w swoim przykładowym kodzie:
<meta itemscope itemprop="mainEntityOfPage" itemType="https://schema.org/WebPage" itemid="https://google.com/article" />
To, co obecnie mam, nie jest jeszcze zgodne z zasadami narzędzia testowego - wciąż jestem zajęty dodawaniem wszystkich wymaganych właściwości, a jednocześnie próbuję tam również dodać zalecane właściwości:
<div itemscope itemtype="http://schema.org/BlogPosting">
<h1 itemprop="headline">
<a href="http:///www.example.com/blog/1001/my-blog-article" itemprop="url">My Blog Article</a>
</h1>
<p>Written by
<span itemprop="author" itemscope itemtype="http://schema.org/Person">
<span itemprop="name">Mase Kind</span>
</span> on
<time itemprop="datePublished" datetime="2015-11-16T15:30:00+02:00">November 16, 2015</time>
<meta itemprop="dateModified" content="2015-12-10T12:29:00+02:00" />
<div itemprop="publisher" itemscope itemtype="http://schema.org/Organization">
<div itemprop="logo" itemscope itemtype="http://schema.org/ImageObject"></div>
<meta itemprop="name" content="My Company Name" />
</div>
</p>
<div itemprop="articleBody">
<p>first article body</p>
</div>
</div>
Mam to również w swoim dokumencie:
<body itemscope itemtype="http://schema.org/WebPage">
...
</body>
Czy w jakikolwiek sposób będzie to kolidować z próbką kodu dostarczoną przez Google?
źródło
Odpowiedzi:
mainEntityOfPage
Właściwość jest używana, aby dać adres URL strony, na której rzecz jest głównym podmiotem. Może stać się jaśniejsze, jeśli spojrzysz na właściwość odwrotnąmainEntity
: daje to główny byt dla strony ( patrz przykład ).Na przykład dla strony internetowej, która zawiera pojedynczy post na blogu, możesz podać jeden z tych:
BlogPosting
→mainEntityOfPage
→WebPage
WebPage
→mainEntity
→BlogPosting
Te właściwości są przydatne do przekazania głównej treści na stronie (ponieważ strony mogą zawierać wiele elementów, np. Elementy
ItemList
pokrewneWebPage
,Person
opis autora,WebSite
podanie niektórych metadanych itp.).( Bardziej szczegółowe wyjaśnienie znajduje się w mojej odpowiedzi dotyczącej przepełnienia stosu ).
Istnieją dwa sposoby użycia
mainEntityOfPage
:WebPage
)Drugi często nie ma większego sensu (wolisz użyć właściwości odwrotnej
mainEntity
) i prawdopodobnie z tego powodu Google poleca / oczekuje pierwszego.Aby podać adres URL, możesz po prostu użyć
link
elementu:Narzędzie do testowania danych strukturalnych Google akceptuje to.
W przykładzie fragmentu rozszerzonego artykułów Google używa zamiast tego
meta
elementu zitemid
:To jest nieprawidłowe Mikrodane HTML5 +: Jeśli
meta
element maitemprop
atrybut, musi również miećcontent
atrybut .źródło
<meta itemscope itemprop="mainEntityOfPage" itemType="https://schema.org/WebPage" itemid="https://google.com/article" content='https://google.com/article' />
Sprawdza poprawność i nie pokazuje błędu w narzędziu do testowania danych strukturalnychmeta
element prawidłowym. Pamiętaj, żecontent
wartość zostanie zignorowana, więc możesz podać pustą wartość.meta
zamiastlink
przykładów? oba sprawdzają się w narzędziu do testowania danych strukturalnych. Chociaż podgląd jest inny. Kiedylink
jest używany, mamainEntityOfPage http://example.com/article-1
podczas gdymeta
pokazuje@id
i@type
atrybuty.meta
sposób tworzy nowy element z typem i identyfikatorem URI jako identyfikatorem,link
sposób po prostu prowadzi do strony. Nie mam pojęcia, dlaczego korzysta z dokumentacji Googlemeta
, zwłaszcza że uważam, żelink
sposób jest prostszy.Jest to uzupełnienie
url
isameAs
właściwości, jak opisano wmainEntity
tle .Ma osobliwą nazwę, ponieważ może być stosowana do wszystkich elementów typu
Thing
. Gdyby miał zastosowanie tylko doArticles
niego, mógłby zostać nazwanymainTopic
/mainTopicOfArticle
i był bardziej przejrzysty.Oczekuje się, że wartość właściwości będzie elementem typu
CreativeWork
lubURL
odnośnikiem działającym zgodnie ze Schema.org. Oznacza to, że może to być równieżArticle
lub,BlogPosting
jak wspomniałeś. Jeśli jednak budujesz strony AMP, wartością powinien być adres URL.Pomimo tego, co twierdzi Narzędzie do testowania danych strukturalnych Google, ich dokumentacja nie zaleca już korzystania ze
mainEntityOfPage
stron spoza AMP, więc możesz je pominąć.źródło