【问题标题】:Can schema.org's email property use the href value?schema.org 的 email 属性可以使用 href 值吗?
【发布时间】:2014-05-08 14:01:43
【问题描述】:

我想做的是获取href 的值并将其分配给电子邮件属性。现在,我有这样的东西 <a href="mailto:jane-doe@xyz.edu" itemprop="email">email</a> 结果是 email="email"

schema.org 文档有一个使用以下语法的示例 <a href="mailto:jane-doe@xyz.edu" itemprop="email">jane-doe@xyz.edu</a> 结果是 email=jane-doe@xyz.edu

我是否必须拼出我的电子邮件地址才能使用微数据对其进行标记?

我知道某些属性(例如 URL)实际上获取了 href 值,而不是 HTML 标记包围的文本。这可以为电子邮件属性配置吗?

【问题讨论】:

    标签: html email schema.org microdata


    【解决方案1】:

    Schema.org 的 email property 期望 Text 作为值。

    这很奇怪。在我看来,它应该采用 URL,或者至少允许两种方式(“TextURL”,menu property 也是如此)。 我只能猜测他们选择 Text 是因为一些发布者出于防止垃圾邮件的原因不想指定他们的真实电子邮件地址(例如,“john -at-example dot org”不是 URL ,当然;这在Organization:&lt;span itemprop="email"&gt;secretariat(at)google.org&lt;/span&gt;) 中也用作示例,或者因为有些人会忘记添加协议mailto:,但这两个“问题”都不是原因not 允许 URL 另外

    这是公共词汇邮件列表中的一个相关主题:
    Expected type(s) for email should include URL

    如果您不想让电子邮件地址在页面上可见,并且希望使用 Text 遵循当前定义,则可以使用 meta 元素作为一个丑陋的解决方法:

    <p>
      <a href="mailto:john@example.com">email</a>
      <meta itemprop="email" content="john@example.com" />
      <!-- the value is not an URL but text -->
    </p>
    

    旁注:

    每个符合标准的微数据解析器都必须为此标记提取“email:mailto:john@example.com”:

    <a href="mailto:john@example.com" itemprop="email">email</a>
    

    由于email 属性用于avalue is the href content 而不是元素内容。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-04-30
      • 1970-01-01
      • 2019-08-25
      • 2010-10-24
      • 1970-01-01
      • 2021-09-28
      • 1970-01-01
      相关资源
      最近更新 更多