4

我在使用schema.org时遇到了麻烦。我正在制作一个类似于urbandictionary.com的网站。用户是词典的贡献者。此外,该词典可能包含“2012 年伦敦奥运会”、“麻省理工学院宿舍”等短语。随便。所以我想向网站添加架构。应该以模式命名单词/短语和用户的描述?

http://schema.org/docs/full.html

编辑:示例页面的布局:

邮箱

  1. 谷歌的电子邮件服务-user63
  2. 垃圾邮件预防方面的最佳电子邮件服务 -user21
  3. Gmail 支持 IMAP、POP3、SMTPi OAUTH、FRD、双向安全登录 -userMew

Edit2:另一个示例页面的布局:

蝙蝠侠 5

  1. 即将上映的蝙蝠侠电影,贾斯汀·比伯将在其中扮演小丑 -user43,2015 年 5 月
  2. 开幕是一场灾难。2015 年 12 月,比伯滑到楼梯上,然后被抬到医院 -user22
  3. 这部电影是一场灾难,一部质量很差的电影 -userKitten,2016 年 3 月
4

2 回答 2

4

一般的

schema.org 上的文档中有一个入门页面。当您正在构建字典时,您可能在那里有一个关于电影的条目(他们正在使用的示例)。标记可能如下所示:

<div itemscope itemtype ="http://schema.org/Movie">
  <h1 itemprop="name">Avatar</h1>
  <span>Director: <span itemprop="director">James Cameron</span></span>
  <span itemprop="genre">Science fiction</span>
  <a href="../movies/avatar-theatrical-trailer.html" itemprop="trailer">Trailer</a>
</div>

这要求您知道您的数据输入当然是一部电影。如果你不知道,你可以使用 itemtype Article(甚至Thing)和全局属性nameand description

还有关于例如日期的格式以及如何使用标签和设置属性来集成不可见数据的附加信息: 。metacontent<meta itemprop="bestRating" content="5" />

您始终可以通过指定属性为项目提供多种类型additionalType。您甚至可以扩展模式。但是您应该谨慎使用它们,因为它们不会被搜索引擎识别,但将来可能会被使用:

如果模式获得采用并证明对搜索应用程序有用,搜索引擎可能会开始使用这些数据。

一般来说,所有这些标记都是可选的,所以请尽可能多地标记,但只标记那些有意义的部分。从schema.org 常见问题解答

只标记项目的某些属性很好 - 标记不是一个全有或全无的选择。

标记验证

为了测试您的标记,Google 提供了丰富的片段测试工具。您可以在那里粘贴您的 HTML,然后查看 Google 从中提取的内容。对于上面的示例,结果如下:

Item
    Type: http://schema.org/movie
    name = Avatar
    director = James Cameron
    genre = Science fiction
    trailer
    text = Trailer
    href = http://www.example.com/movies/avatar-theatrical-trailer.html

在您的页面上

由于您页面上的信息是用户生成的,您可以让用户从更高级别的 schema.org 类型(Movie, Place(MIT Dorms), SportsEvent(2012 London Olympics) 等)中选择并回退到Thing. 然后获取与这些类型的属性匹配的表单元素中的数据。保存数据并在构建字典页面时对其进行评估。然后由谷歌(和其他人)抓取并用于索引。

对于您提供的 Gmail 示例,标记可能如下所示(将其复制并粘贴到测试工具中,以查看 Google 是否理解嵌套):

<div itemscope itemtype ="http://www.schema.org/SoftwareApplication">
  <h1 itemprop="name">Gmail</h1>
  <div itemprop="comment" itemscope itemtype="http://www.schema.org/Comment">
    <span itemprop="comment">Google's email service</span>
    <span itemprop="author">user63</span>
  </div>
  <div itemprop="comment" itemscope itemtype="http://www.schema.org/Comment">
    <span itemprop="comment">best email service in terms of spam prevention</span>
    <span itemprop="author">user21</span>
  </div>
  <div itemprop="comment" itemscope itemtype="http://www.schema.org/Comment">
    <span itemprop="comment">Gmail has a support of IMAP, POP3, SMTPi OAUTH, FRD, two-way secure login</span>
    <span itemprop="author">userMew</span>
  </div>
</div>

附加信息

有关详细信息,请参阅Google schema.org 常见问题解答。另请参阅Dublin Core Metadata Initiatice (DCMI) ( Wikipedia ) 作为对数据进行语义标记的替代方法。他们还有一个 wiki 页面,用于在 schema.org 和 DC 之间进行映射

于 2012-07-30T10:40:52.610 回答
4

字典现在可以在 schema.org 中以多种方式表示。目前谷歌搜索结果不是基于结构化数据/schema.org,但将来可能会改变。

下面的大多数建议是更具体的http://schema.org/CreativeWork类型- 这很重要,因为它包含 , 等属性commentcontributor并且text对于用户可编辑的内容和贡献很有用。CreativeWork 还包含learningResourceType哪些可以设置为字典- 但这不是 schema.org 的建议值,因此搜索引擎可能不知道在哪里查找。

用于字典的 SEO 和语义 HTML

使用带有 和 的标签是执行字典术语/定义并被顶级字典网站使用的标准方式,您可以将这些标签与其中的架构一起使用,

<div itemscope itemtype="http://schema.org/Collection"><h1 itemprop="name">Dictionary</h1>
 <dl id="gmail" itemscope itemtype="http://schema.org/CreativeWork">
  <dt itemprop="name">Gmail</dt>
   <meta itemprop="sameAs" content="http://gmail.com">
   <meta itemprop="url" content="http://mydictionary.com/page1.html#gmail">
  <dd itemprop="description"><span itemprop="comment">Google's email service</span> -<span itemprop="contributor">user63</span></dd>
 </dl>
</div>

每个术语都有一个单独的页面(或面包屑)似乎是获得高排名的关键。排名中使用了页面名称(包括任何书签),因此如果您搜索“ardvark”,即使两个页面在其他方面相同,URLhttp://mydictionary.com/A也会排名在下方。http://mydictionary.com/Aardvark

解释 3 种合适的模式类型,包括“官方”字典

方法1)

仅使用(您的术语)和(您的定义)设置的http://schema.org/Thinghttp://schema.org/Intangible 。这将是数百个(或更多)独立的,因此您可以将它们分组到一个集合中(这就是 VideoGallery 和 ImageGallery 结构化数据的完成方式)。这样做的好处是它很简单,而且每个都在单独的页面上显示,这应该会增加点击率。 namedescriptionhttp://schema.org/Collective

方法2)

架构将 Dictionary 的值识别为 Dictionary 的唯一方法是使用http://schema.org/publicationType- 它可以是此处列出的任何值- 其中之一是Dictionary。另一个是术语

问题是目前publicationType只能在内部使用http://schema.org/MedicalScholarlyArticle- 但提出请求,这可能会扩展,例如扩展到其他ScholarlyArticles 或 CreativeWork(它是 MedicalScholarlyArticle 的父级)。MedicalScholarlyArticle 是一种 CreativeWork - 如上所述。如果使用 MedicalScholarlyArticle,您可以在其中嵌套项目,每个术语一个,可能使用http://schema.org/Thinghttp://schema.org/Intangible(设置namedescriptionsameAs可用于指向维基百科或城市词典标识该术语的条目,或社交媒体)。

您可以在此处打开问题以请求将publicationType 添加到所有CreativeWork。

方法3)

字典是一本书(无论是离线还是在线),因此http://schema.org/Book通过嵌套在其中使用和添加每个术语。Book 是http://schema.org/CreativeWork的一种类型,在方法 1 中,您可以使用 Thing、Intangible 设置条款,甚至可以将每个条款变成它自己的 CreativeWork(只需检查一下,因为 google 可能想要每个图片作为它适用于每篇学术文章)。

于 2015-09-29T00:33:49.193 回答