我有这个示例代码(只是这里需要的部分):
<!DOCTYPE html>
<html itemscope itemtype="http://schema.org/ProfessionalService" lang="hu">
<head></head>
<body>
<section id="contact">
<ul>
<li>Tel.: <span itemprop="telephone" id="tel"><a "href="tel:+36305555555">06 (30) 5555555</a></span></li>
</ul>
</section>
</body>
</html>
当我在Google's Structured data testing tool中验证时,我在右边获得了正确的数据。我看到那里的号码。没事。
当我在网站站长工具中使用第一个标记时,Google会将此视为一个给出404错误的链接,因为没有像+36305555555这样的页面。这是一个问题。
我读到解决方案是将intemprop放在<a>
标签中,如下所示:
<!DOCTYPE html>
<html itemscope itemtype="http://schema.org/ProfessionalService" lang="hu">
<head></head>
<body>
<section id="contact">
<ul>
<li>Tel.: <span id="tel"><a "href="tel:+36305555555" itemprop="telephone">06 (30) 5555555</a></span></li>
</ul>
</section>
</body>
</html>
但在这种情况下,测试工具给了我这个:
所以在一个案例中谷歌说“好吧这很酷,因为结构化数据,我看到你的电话号码,但这是一个错误404,所以不要这样做”。在另一种情况下,它说:“这是一个带有URL的电话号码,但你没事,你没有404错误”。
在这种情况下该怎么办?
答案 0 :(得分:0)
注意:它是href
,而不是"href
。
这是有效的HTML5 +微数据并适当使用Schema.org词汇表:
<div itemscope itemtype="http://schema.org/ProfessionalService">
<span itemprop="telephone">
<a href="tel:+36305555555">06 (30) 5555555</a>
</span>
</div>
如果您要在telephone
元素上指定a
属性,则属性值将是href
属性的值,但Schema.org currently expects text ,而不是网址,因此您使用附加span
的解决方案是正确的。
我不知道Google网站管理员工具,但我认为他们会尝试解析tel
URI(这将永远不会有效),这很奇怪。无论如何,我不明白为什么这会阻止你使用这个标记。