如何在Pug JS中添加SEO结构化数据JSON脚本?
解决Pug中添加JSON-LD结构化数据的编译错误
你的代码存在两个核心问题,导致编译失败:
1. Pug标签内容语法错误
在Pug中,给script标签添加内容时,不能直接把JSON写在属性后面。必须遵循Pug的内容块语法:要么在标签末尾加.并换行,要么通过缩进把内容放在标签下方。原代码直接将JSON跟在script(type="application/ld+json")后,解析器会把JSON字符误判为属性的一部分,引发INVALID_KEY_CHARACTER错误。
2. JSON本身语法不完整
原JSON存在多处括号未闭合的问题:
isPartOf对应的对象只写了开头的{,没有闭合}@graph数组里的WebPage对象未闭合}- 整个JSON的外层大括号也未闭合
这直接触发了SYNTAX_ERROR。
正确的Pug代码写法
推荐用清晰的内容块写法(加.):
script(type="application/ld+json"). { "@context": "https://schema.org", "@graph": [ { "@type": "WebPage", "@id": "https://www.example.io/some-page/", "url": "https://www.example.io/some-page/", "name": "Access Example's Knowledge Base", "isPartOf": { "@id": "https://www.example.io/#website" } } ] }
或者用缩进写法:
script(type="application/ld+json") { "@context": "https://schema.org", "@graph": [ { "@type": "WebPage", "@id": "https://www.example.io/some-page/", "url": "https://www.example.io/some-page/", "name": "Access Example's Knowledge Base", "isPartOf": { "@id": "https://www.example.io/#website" } } ] }
内容的提问来源于stack exchange,提问作者Justin
相关产品推荐
相关产品推荐

