标签: json-ld

使用Mandrill进行Gmail标记

我正在测试gmail标记"开始行动":https: //developers.google.com/gmail/markup/actions/actions-overview#go-to_actions

我在HTML电子邮件中设置了一个gmail标记(由于Mandrill不支持json-ld的微数据),并按照本教程中的说明发送它:https: //developers.google.com/gmail/markup/apps -script教程

它运行良好,但当我尝试通过Mandrill API发送相同的HTML电子邮件时,操作按钮根本不显示.我知道"来自"和"到"电子邮件必须是相同的Gmail帐户,所以当我在两种情况下发送它时,我这样做,但只有在我使用应用程序脚本时才有效.

在发送电子邮件时,mandrill是否删除了任何微数据信息?有没有人处理过这种情况?

email markup gmail mandrill json-ld

5
推荐指数
0
解决办法
873
查看次数

内联 JSON-LD 脚本块中的动态值

我将数据存储在我选择并在我的 html 页面上回显的数据库中,如下所示:

 <article id="content_left_article_1">
      <h1 class="main-heading">Get in Touch</h1>
      <P><?php echo $rs_contactRows['ContactJobTitle']; ?>: <?php echo $rs_contactRows['ContactName']; ?></P>
      <P>Email: <?php echo $rs_contactRows['ContactEmail']; ?></P>
      <P>Mobile: <?php echo $rs_contactRows['ContactTelephone']; ?></P>
 </article>
Run Code Online (Sandbox Code Playgroud)

我知道我可以在页面上的单独脚本块中使用 JSON-LD 轻松标记此人的数据,如下所示:

<script type='application/ld+json'> 
    {
      "@context": "http://www.schema.org",
      "@type": "person",
      "name": "Brian Keet",
      "jobTitle": "Director",
      "url": "http://tekiahfoundation.blogspot.co.za/",
      "email": "briankeet@yahoo.com",
      "telephone": "+27766261024"
    }
    </script>
Run Code Online (Sandbox Code Playgroud)

但是,如果客户端要更新数据库中的任何这些详细信息(他们肯定会通过站点 CMS 进行更新),上面的静态 JSON-LD 脚本块将保持......好吧,静态。我一直在谷歌搜索和堆栈溢出像发疯一样试图找到关于如何在 JSON-LD 脚本块中拥有动态值的答案,

<script type='application/ld+json'> 
    {
      "@context": "http://www.schema.org",
      "@type": "person",
      "name": "$user.name + $user.surname",
    }
    </script>
Run Code Online (Sandbox Code Playgroud)

或其他一些方法,通过谷歌的结构化数据测试工具检查。

我一直在试图弄清楚如何使用 json_encoded($dataObject),我在 php 中使用了下面的 mysqli_query() 等(见下面的代码),并且可能用 javascript 创建一个 …

dynamic json-ld

5
推荐指数
1
解决办法
3364
查看次数

控制RDF到"更漂亮"JSON-LD的转换

我知道将RDF转换为JSON-LD有一些限制,但我想知道是否有一种很好的方法可以使转换避免使用空白节点?

例如,给定RDF图:

@prefix ex: <http://example.org/ontology#> .
<http://example.org/x123> ex:house [
                                      a ex:House ;
                                      ex:houseNumber "1a" ;
                                      ex:doorColour "blue"
                                   ] ;
                          ex:house [
                                      a ex:House ;
                                      ex:houseNumber "1b" ;
                                      ex:doorColour "green"
                                   ] .
Run Code Online (Sandbox Code Playgroud)

是否有可能使用(Java)JSON-LD强制转换为基于数组的bnodes表示:

{
  "id": "http://example.org/x123",
  "house": [{
    "type": "House",
    "houseNumber": "1a",
    "doorColour": "blue"
  }, {
    "type": "House",
    "houseNumber": "1b",
    "doorColour": "green"
  }],
  "@context": {
      "ex": "http://example.org/ontology#",
      "house": "ex:house",
      "houseNumber": "ex:houseNumber",
      "doorColour": "ex:doorColour",
      "House": "ex:House",
      "id": "@id",
      "type": "@type"
  }
}
Run Code Online (Sandbox Code Playgroud)

而不是像:

{
  "@graph": [
    {
      "@id": "_:b0",
      "@type": "http://example.org/ontology#House",
      "http://example.org/ontology#doorColour": …
Run Code Online (Sandbox Code Playgroud)

rdf json-ld blank-nodes

5
推荐指数
1
解决办法
96
查看次数

angularjs2的Json-ld脚本标记

我正在努力在angularjs2中自动生成jsonld脚本,但是,我找到了angularjs1的解决方案.有没有人有解决方案.

json-ld angular

5
推荐指数
1
解决办法
743
查看次数

Schema.org 是否已弃用 ProfessionalService?

在阅读了互联网上最近的几篇流行文章后,我决定为我的网页设计公司使用 ProfessionalService over LocalBusiness。我的理解是 LocalBusiness 非常广泛,最好尽可能具体,这也是我选择将 ProfessionalService 和additionalTypeThe Product Types Ontology一起使用的原因。

使用 Google 标签管理器,我的 json-ld 看起来像这样:

<script type="application/ld+json">
  {
    "@context": "http://schema.org",
    "@type": "ProfessionalService",
    "additionalType": "http://www.productontology.org/id/Web_design",
    "name": "BYBE",
    "url": "https://www.bybe.net",
    "logo": "https://www.bybe.net/wp-content/themes/showboat/logo-bybe.png",
    "description": "Creative website design company based in Bournemouth and Poole, Dorset.",
    "telephone": "01202 949749",
    "areaServed": ["Bournemouth", "Poole", "Dorset"],
  "openingHoursSpecification": [
    {
      "@type": "OpeningHoursSpecification",
      "dayOfWeek": [
        "Monday",
        "Tuesday",
        "Wednesday",
        "Thursday",
        "Friday"
      ],
      "opens": "09:00",
      "closes": "17:00"
    }
  ],
    "address": {
      "@type": "PostalAddress",
      "streetAddress": "Flat 11, …
Run Code Online (Sandbox Code Playgroud)

schema deprecated schema.org json-ld

5
推荐指数
1
解决办法
3149
查看次数

如何在产品片段中添加多个评论?

我正在尝试在 JSON-LD 中创建一个包含多个评论的产品片段。当我只包含一个评论时,下面的代码有效。(请将控制台中的代码片段复制粘贴到以下网址上以进行测试:https : //search.google.com/structured-data/testing-tool)。但是,我不清楚如何添加多个评论。在挣扎了一段时间后,我自己无法让它工作,而且我很难找到一个例子。

假设我有一条来自“John”的评论,他给出了“3.0”的产品评级,而另一条“Sarah”的评论给出了“5.0”的产品评级。我如何在下面的代码中包含对莎拉的评论?

 {
   "@context": "http://schema.org/",
   "@type": "Product",
   "name": "Samsung Galaxy S",  
   "description": "A great product",
   "brand": {
"@type": "Thing",
    "name": "Samsung"
},
"aggregateRating": {
    "@type": "AggregateRating",
    "ratingValue": "4.0",
    "reviewCount": "103"
},
"offers": {
    "@type": "Offer",
     "priceCurrency": "EUR",
     "price": "18",
     "itemCondition": "http://schema.org/NewCondition",
     "availability": "http://schema.org/InStock",
     "seller": {
        "@type": "Organization",
        "name": "Samsung"
    }

}
,"review": {
    "@type": "Review",
     "author": "John",
    "datePublished": " 7 December 2016",
    "description": "I love this product so much",
    "name": "Amazing",
    "reviewRating": {
         "@type": …
Run Code Online (Sandbox Code Playgroud)

javascript json rich-snippets json-ld google-rich-snippets

5
推荐指数
2
解决办法
2475
查看次数

JSON-LD 空白节点到 Apache Jena 中的嵌套对象

我有以下示例 Turtle 文档:

@prefix dct:   <http://purl.org/dc/terms/> .
@prefix rdf:   <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix example: <http://example.com/vocabulary/> .
@prefix dcat:  <http://www.w3.org/ns/dcat#> .

<http://example.com/datasets/1>
        a                     dcat:Distribution ;
        example:props         [ example:prop1  "hello" ;
                                example:prop2  "1" 
                              ] ;
        dct:description       "test data" .
Run Code Online (Sandbox Code Playgroud)

我使用 Apache Jena(带有 JSONLD_COMPACT_PRETTY 的 RDFDataMgr)将它转换为 JSON-LD 到 JSON-LD:

{
  "@context": {
    "dct": "http://purl.org/dc/terms/",
    "rdf": "http://www.w3.org/1999/02/22-rdf-syntax-ns#",
    "dcat": "http://www.w3.org/ns/dcat#",
    "example": "http://example.com/vocabulary/"
  },
  "@graph": [
    {
      "@id": "_:b0",
      "example:prop1": "hello",
      "example:prop2": "1"
    },
    {
      "@id": "http://example.com/datasets/1",
      "@type": "dcat:Distribution",
      "example:props": {
        "@id": "_:b0"
      },
      "dct:description": "test data" …
Run Code Online (Sandbox Code Playgroud)

java jena json-ld blank-nodes

5
推荐指数
1
解决办法
751
查看次数

混合 JSON-LD CollectionPage 和 Schema.org 的微数据 `hasPart`

下面的微数据标记效果很好,谷歌的结构化数据测试工具显示了一个CollectionPageWebSite/WebPage作为孩子。

<body itemscope itemtype="https://schema.org/CollectionPage">
  <span itemscope itemtype="https://schema.org/WebSite" itemprop="hasPart">
    <a href="https://springfield-xxxx.us" itemprop="url">Official site of Springfield</a>
  </span>
  <span itemscope itemtype="https://schema.org/WebPage" itemprop="hasPart">
    <a href="https://facebook.com/group/XXXX" itemprop="url">Local events in Springfield</a>
  </span>
  <span itemscope itemtype="https://schema.org/WebPage" itemprop="hasPart">
    <a href="https://news.us/city/springfield-xxxx" itemprop="url">Latest news in Springfield</a>
  </span>
</body>
Run Code Online (Sandbox Code Playgroud)

但是,当我添加 JSON-LD 时,Google 的结构化数据测试工具会分别显示对象CollectionPageWebPage/WebSite就像它们没有连接一样。这是一个带有 JSON-LD 的示例:

<!DOCTYPE html>
<html>
<head>
  <script type="application/ld+json">
    {
      "description": "...",
      "author": {"@type":"Person", "name": "Homer J. Simpson"},
      "@type": "CollectionPage",
      "url": "http://my-springfield.us/sites",
      "publisher": {
        "@type": "Organization",
        "logo": …
Run Code Online (Sandbox Code Playgroud)

microdata schema.org json-ld

5
推荐指数
1
解决办法
2223
查看次数

使用 JavaScript 添加 JSON-LD

我正在尝试使用 JSON-LD 实现结构数据。我正在做的是使用 jQuery 动态获取内容并制作 JSON 格式并附加到head元素内。

<script id="dynamicJSONLD"></script>
Run Code Online (Sandbox Code Playgroud)
$(document).ready(function(){
var product_name = $(.product-pg .product-name).text();
data = {
               "@context": "https://schema.org",
               "@type": "Product",
               "url": "https://www.example.com/productone",
               "name": product_name  
            };

//creating the script element and storing the JSON-LD

var script = document.createElement('script');
script.type = "application/ld+json";
script.innerHTML = JSON.stringify(data);
document.getElementsByTagName('head')[0].appendChild(script);

//OR

//storing the JSON-LD using ID
$("#dynamicJSONLD").html(JSON.stringify(data));
});
Run Code Online (Sandbox Code Playgroud)

两种方式(创建script元素并存储 JSON-LD / 使用 ID 存储 JSON-LD)都有效吗?哪种实现方式最好?另外,谷歌是否像上面一样使用 JavaScript 抓取动态添加的 JSON-LD?

javascript json-ld

5
推荐指数
1
解决办法
5175
查看次数

Jest 无法从 node_modules 中找到模块

我正在创建打字稿基础 npm 模块,但我坚持玩笑测试。我正在尝试包含来自https://github.com/types/jsonld 的jsonld 模块,一切似乎都正常,但是当我运行命令时yarn test出现错误消息Cannot find module 'jsonld' from 'DidDocument.ts'

包.json

{
    "name": "defined-id",
    "version": "1.0.0",
    "description": "Defined ID",
    "main": "lib/index.js",
    "types": "lib/index.d.ts",
    "scripts": {
        "test": "jest --config jestconfig.json",
        "build": "tsc",
        "format": "prettier --write \"src/**/*.ts\" \"src/**/*.js\"",
        "lint": "tslint -p tsconfig.json",
        "prepare": "yarn run build",
        "prepublishOnly": "yarn test && yarn run lint",
        "preversion": "yarn run lint",
        "version": "yarn run format && git add -A src",
        "postversion": "git push && git push --tags"
    },
    "repository": { …
Run Code Online (Sandbox Code Playgroud)

types typescript json-ld jestjs

5
推荐指数
1
解决办法
1153
查看次数