Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/56.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Facebook目录-can';t使用JSON-LD使每页有多个产品变体_Facebook_Schema.org_Microdata_Json Ld_Facebook Pixel - Fatal编程技术网

Facebook目录-can';t使用JSON-LD使每页有多个产品变体

Facebook目录-can';t使用JSON-LD使每页有多个产品变体,facebook,schema.org,microdata,json-ld,facebook-pixel,Facebook,Schema.org,Microdata,Json Ld,Facebook Pixel,我正在努力让Facebook的微数据标签调试器识别JSON-LD数据中定义的、并根据schema.org格式化的多个产品变体 该问题已在中描述,但唯一的答案来自于有相同问题的人,以及粘贴Facebook示例数据的人,该示例数据仅包含1个变体 从试图实现微数据标签到允许Facebook获取目录更新,我发现的一致点是,谷歌实现可以在页面中的任何位置找到微数据标签,以及他们使用的schema.org产品定义的任何变化,Facebook的实现除了一系列非常狭窄的场景外,其他都失败了 首先,尽管Faceb

我正在努力让Facebook的微数据标签调试器识别JSON-LD数据中定义的、并根据schema.org格式化的多个产品变体

该问题已在中描述,但唯一的答案来自于有相同问题的人,以及粘贴Facebook示例数据的人,该示例数据仅包含1个变体

从试图实现微数据标签到允许Facebook获取目录更新,我发现的一致点是,谷歌实现可以在页面中的任何位置找到微数据标签,以及他们使用的schema.org产品定义的任何变化,Facebook的实现除了一系列非常狭窄的场景外,其他都失败了

首先,尽管Facebook开发者帮助页面中没有提到,但它只会识别头标签中的JSON-LD数据。(它指出OpenGraph标记应该在头部,但对于JSON-LD没有这样说。)我还发现,它似乎很少能够找到价格数据,任何验证失败都没有得到很好的解释

我尝试按如下方式格式化JSON-LD数据:

  • 每个变体包含一个产品对象
  • 包括一个产品对象,其中包含多个ProductModel对象,每个变量一个
这两种方法似乎都不起作用

我已经设置了一些测试页面,可用于:

  • -其中包含来自
  • -包含2种产品,每种型号一种
  • -包含1个产品,2个产品型号,每个型号一个
如果使用调试器处理这些URL,第一个调试器会成功找到包含价格的产品,第二个调试器会找到第一个变量但忽略第二个变量,第三个调试器无法找到产品的价格

使用该页面可成功查找最后2个URL的两个变体

有没有人成功地让Facebook在同一页面上识别出多个产品变体


作为一个额外的问题,我发现的另一件奇怪的事情是,如果我从ASP.Net MVC核心应用程序生成JSON数据,并将其作为页面呈现的一部分注入页面,FB调试器总是无法找到价格信息,而如果我将呈现的输出粘贴到视图中,FB调试器查找价格信息。我已经使用Postman验证了呈现的页面在这两种情况下都是相同的,一直到空白,所以我不知道如何解释这一点。还有其他人经历过类似的事情吗?

这是FB的规定。谷歌还强制执行schema.org数据模型中未定义的页面级要求。无论采用何种标准数据模型,谷歌和FB都不同意以同样的方式获取数据。如果你想要一个有效的页面,你必须仔细阅读harvester的文档。我会通过调试器上的real帐户进行测试。我认为Facebook通过其像素收集SD,其行为可能有所不同。也许真正的代码能更好地处理SD问题。当您想要自动更新目录时,可以设置一个测试目录,看看是否可以让它更新多个产品。