Schema验证报错:WebPage类型不支持logo itemprop属性的解决咨询
解决Schema验证中WebPage类型不支持logo属性的问题
错误根源
报错的核心原因是:你给<img>设置了itemprop="logo",但该元素所在的Schema类型为WebPage,而schema.org的WebPage类型并没有定义logo这个属性,所以验证工具判定属性不合法。你之前换其他itemprop仍报错,大概率是因为这些属性同样不属于WebPage类型的允许范围。
解决方案
要解决这个问题,需要将logo属性归属到支持它的Schema类型下,同时保证和页面的Schema关联,下面提供两种常用方案:
方案1:将logo关联到网站发布者(Organization类型)
把logo放在Organization类型的容器中,再通过publisher属性关联到WebPage,符合搜索引擎对网站主体信息的识别逻辑:
<!-- 定义页面的WebPage Schema --> <div itemscope itemtype="https://schema.org/WebPage"> <!-- 定义网站发布者Organization,包含logo --> <div itemprop="publisher" itemscope itemtype="https://schema.org/Organization"> <a href="https://www.mim-essay.com" class="logo-imgContainer navbar-brand ml-3 d-flex align-items-center" itemprop="url"> <img id="_logo6" itemprop="logo" fetchpriority="high" src="https://www.mim-essay.com/images/MiM-Essay-Sticky-Logo-6.png" alt="mim essay" class="logo-img" /> </a> </div> </div>
方案2:将logo归为导航元素(SiteNavigationElement类型)
如果这个logo是导航栏的一部分,可以直接用SiteNavigationElement类型来包裹,该类型支持logo属性:
<div itemscope itemtype="https://schema.org/SiteNavigationElement"> <a href="https://www.mim-essay.com" class="logo-imgContainer navbar-brand ml-3 d-flex align-items-center" itemprop="url"> <img id="_logo6" itemprop="logo" fetchpriority="high" src="https://www.mim-essay.com/images/MiM-Essay-Sticky-Logo-6.png" alt="mim essay" class="logo-img" /> </a> </div>
验证建议
修改后可以用Schema官方验证工具检查,确保属性和类型匹配无误。
内容的提问来源于stack exchange,提问作者Gaurav Prakash
相关产品推荐
相关产品推荐

