How to specify publisher in schema.org's Article structured data?
Something like this, though of course other properties are required for this to meet Google's requirements for article features in search results.
<div itemscope itemtype="http://schema.org/Article">
<!-- blah blah -->
<div itemprop="publisher" itemscope itemtype="https://schema.org/Organization">
<div itemprop="logo" itemscope itemtype="https://schema.org/ImageObject">
<img src="http://www.mycorp.com/logo.jpg"/>
<meta itemprop="url" content="http://www.mycorp.com/logo.jpg">
<meta itemprop="width" content="400">
<meta itemprop="height" content="60">
</div>
<meta itemprop="name" content="MyCorp">
</div>
</div>
Schema.org expects an Organization
item as value for the publisher
property, but you provide a string value ("MyCorp").
If you want to follow Schema.org’s expectation (which is just a recommendation, not mandatory), you could use something like this:
<article itemscope itemtype="https://schema.org/Article">
<div itemprop="publisher" itemscope itemtype="http://schema.org/Corporation">
<span itemprop="name">MyCorp</span>
</div>
</article>
Google might want to see more properties (like logo
) for the Organization
item, but these are also not required. Their testing tool just wants to say that you don’t get one of their search results features if you don’t provide a certain set of properties.