在为 SEO 添加架构数据到您的站点时,将所有架构数据保存在一个元素范围内似乎是一件轻而易举的事情。或者至少在具有相同类型的冗余元素范围的同一页面上。
但是假设我正在遵循样式指南并且只在网站上显示某些属性(例如,页脚中没有足够的空间来列出所有元素属性)。然而,我仍然希望这些信息显示在搜索引擎中(例如营业时间或 Google map )。
如果我有一个使用 HealthAndBeautyBusiness
模式数据的页脚,但只想显示一些字段,是否可以只列出它们并应用 class="visuallyhidden"
我不想显示的元素属性?
<div class="contact_info" itemscope itemtype="http://schema.org/HealthAndBeautyBusiness">
<span itemprop="address" itemscope itemtype="http://schema.org/PostalAddress">
<p itemprop="streetAddress"></p>
<p>
<span itemprop="addressLocality"></span>,
<span itemprop="addressRegion"></span>
<span itemprop="postalCode"></span>
</p>
</span>
<p itemprop="email" class="visuallyhidden"></p>
<p itemprop="telephone" class="visuallyhidden"></p>
</div>
换句话说,是否有明确定义的方法来区分恶意使用和正确使用 .visuallyhidden
类?
附加问题:当搜索引擎抓取您的站点时,它是否抓取整个站点并存储聚合架构数据?或者它是否将每个页面上的模式数据视为单独的?
最佳答案
就 Microdata 和 schema.org 而言,这是有效的。
请注意微数据 allows使用meta
和 body
中的 link
元素,它们通常默认隐藏,特别是为了 adding properties for content that is not visible 的目的在页面上。
消费者(如搜索引擎)可能对他们将忽略的内容、他们将解析的内容、他们将惩罚的内容等有额外的规则。但是,讨论这是关于 SEO 的,这在 Stack Overflow 上是题外话。
关于css - 可以接受将视觉隐藏类应用于模式属性吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26412662/