xml - Jekyll——将完整的 YAML 前端内容转换为 XML/JSON

标签 xml json jekyll

我玩 Jekyll 有一段时间了。在某些情况下,我觉得功能有限。所以我计划以这种方式扩充我的网站:

  • 只使用Jekyll渲染一些固定的基础组件(向后兼容不支持JS的环境)。
  • 使用 Jekyll 输出元数据,例如XML 或 JSON。
  • 使用客户端 JS 和元数据提供更丰富的功能。

当必填字段固定时,任务就很容易了。例如人们可能会使用 Jekyll 生成 RSS (xml) 提要;有些人使用 Jekyll 生成搜索索引(带有“标题”、“日期”等的 xml)。

现在我想为我的模板的最终用户提供更多自由,因此我不限制在 YAML 前端使用的字段。有没有一种方便的方法可以将完整的 YAML 前端内容转换为 JSON 到 XML 格式?

我没有在 Jekyll 或 Liquid 手册中找到支持转储完整的 YAML 前端内容。如果我直接输出{{ page }},结果是这样的:

{"name"=>"Google", "date"=>#, "link"=>"http://google.com/", "open_source"=>false, "open_format"=>false, "rate_use"=>10, "rate_quality"=>9, "tags"=>["Google", "Search Engine", "Information Retrieval"], "language"=>"en", "layout"=>"default", "mathjax"=>false, "url"=>"/sample/google.html", "content"=>"我每天都用的搜索引擎。\n\n"}

至少有两个问题:

  • 我需要一个 JS 中的 ruby​​-to-JSON/XML 转换器。 (或将其直接读取为 JS 数据结构的解析器)。
  • 有些字段没有正确输出,例如日期

希望有人能给我指点相关资源和以前的类似试验。

非常感谢。

(这是来自 jekyll-rb Google Group 的重定向以获得更快的响应)

相关问题:

最佳答案

对于遇到此问题并试图找到一种方法将任何 Jekyll 的 YAML 数据(来自 Frontmatter 或来自 _data 中的文件)转换为模板中的 JSON 的任何人:

Jekyll 有一个名为 jsonify 的过滤器。 super 简单明了。 https://jekyllrb.com/docs/templates/

文档中的示例:

 {{ site.data.projects | jsonify }}

关于xml - Jekyll——将完整的 YAML 前端内容转换为 XML/JSON,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16889512/

相关文章:

java - 使用 DOM 生成 xml 文件

python - 使用 Python 3 ElementTree 的 XML 文档中的多个命名空间

c# - 将 System.Xml.XmlElement 写入磁盘上的文件

android - 菜单项应指定标题

json - 使用 ColdFusion 为 HighCharts 格式化 JSON 数据

vagrant - Jekyll 再生在 Vagrant 中不起作用

jekyll - 在 Jekyll 中计算集合标签

json - 如何合并两个 JSON 数组中的记录?

java - 我的 Spring 应用程序无法识别我的网络服务

javascript - 当涉及 Jekyll 时,VueJS 插值不呈现