在HowTo Schema中使用itemListElement为何不被验证工具识别?
问题分析与修正方案
你遇到的问题核心是误用了itemListElement属性,这个属性是ItemList类型的专属字段,并不属于HowTo或HowToStep的规范定义,所以Google和Yandex的校验工具会抛出不识别的警告。
具体错误点拆解
HowTo类型的steps属性直接接受HowToStep、HowToSection或文本值,不需要通过itemListElement来嵌套步骤项——itemListElement是用来标记通用列表(比如商品列表、文章列表)的,和HowTo的步骤结构不兼容。- 你在
HowToStep下再次用itemListElement关联HowToDirection也是不符合规范的,HowToStep的内容应该用它自带的text、description或direction属性来标记。
修正后的代码示例
下面是符合schema.org HowTo规范的写法,能通过主流结构化数据校验工具的检测:
<main vocab="http://schema.org/" typeof="HowTo"> <h1><span property="name">How to do the Hokey Pokey</span></h1> <ol property="steps"> <li typeof="HowToStep"> <img alt="step 1" src="step1.jpg" align="left"> <p property="text">put your left hand in</p> </li> <li typeof="HowToStep"> <img alt="step 2" src="step2.jpg" align="left"> <p property="text">put your left hand out</p> </li> </ol> </main>
进阶:细粒度标记步骤指令
如果需要更精准地标记步骤里的操作指令(比如区分说明和动作),可以用HowToStep的direction属性关联HowToDirection类型,写法如下:
<main vocab="http://schema.org/" typeof="HowTo"> <h1><span property="name">How to do the Hokey Pokey</span></h1> <ol property="steps"> <li typeof="HowToStep"> <img alt="step 1" src="step1.jpg" align="left"> <div property="direction" typeof="HowToDirection"> <p property="text">put your left hand in</p> </div> </li> <li typeof="HowToStep"> <img alt="step 2" src="step2.jpg" align="left"> <div property="direction" typeof="HowToDirection"> <p property="text">put your left hand out</p> </div> </li> </ol> </main>
这样的写法既符合schema.org的官方定义,也能被搜索引擎的结构化数据工具正确识别。
内容的提问来源于stack exchange,提问作者user2236928
相关产品推荐
相关产品推荐

