Tag: 液体

Jekyll – 如何避免在YAML frontmatter markdownify项目上添加段落

好的……我有一个项目,我正在使用Jekyll进行播客项目。 我选择通过YAML Front Matter项列出所示内容中的主机: hosts: – Name A – Name B – Name C 使用这段代码 Hosts: {% for host in page.hosts %} {{ host }} {% endfor %} 我收到了正确的清单 Hosts: Name A Name B Name C 但是,我想通过这样做来降低这一点 Hosts: {% for host in page.hosts %} {{ host | markdownify }} {% endfor %} 但杰基尔回归: Hosts: Name […]

液体标记/液体模板中的递归

我一直想弄清楚我将如何用Liquid进行递归。 我有一个应用程序,我想让用户完全控制菜单的呈现。 但是,菜单是由树定义的,因此需要Liquid中的递归函数。 我怎么会这样呢? 做了一些阅读后,我以为我会这样解决它: 包括 我想用这种方式include : {{ include ‘menu_item’ with menu_items }} 而menu_item部分是这样的: {{ menu_item.name }} {{ include ‘menu_item’ with menu_item.children }} 但是,由于它是用户可编辑的,我需要破解Liquid以使其从数据库加载部分内容。 由于这需要花费更多的时间来学习,我想先询问是否有人之前已经解决了这个问题。 如果您之前已经解决过这个问题,那么如何递归呈现某些内容并允许其进行用户编辑? 如果您之前没有解决过这个问题,我建议您选择哪种方式? 我上面详述的方式? 提前致谢!

通过在Jekyll中编程生成文件

假设我在_data文件夹中有一些数据,我想从中自动生成页面。 那就是:想象_data/structure.md如下 chapters: – chapter1 chapter2 chapter3 … 我需要静态文件chapter1.md , chapter2.md …等结构非常相似(例如, chapter1.md是 — title:chapter1 layout: default — This is chapter1!! )。 有没有办法自动创建这些文件,而无需手动执行,只需更改或添加_data文件中的项目?

解决液体标签内的液体变量

我正在使用Octopress,这是Jekyll渲染我网站的框架。 我正在使用一个包装ruby-aaws gem的插件,允许使用Amazon的产品标识符(asin)查询Amazon。 我想重复渲染页面的一部分,循环遍历asins列表以产生输出。 到目前为止,这是我的代码: Recent Diversions {% for asin in [“044656432X”, “0743276396”, “B001YT048E”] %} {% capture a_image %}{{ asin | amazon_medium_image }}{% endcapture %} {% capture a_link %}{{ asin | amazon_link }}{% endcapture %} {% capture a_authors %}{{ asin | amazon_authors }}{% endcapture %} {{ a_image }} {{ a_link }} by {{ a_authors }} […]

Jekyll如何使用post.html生成页面?

我让Jekyll使用某个特定的主题有些困难,我认为{{ content }}如何处理post时我缺少一些基本的东西。 因此,在一个通用的Jekyll站点中, index.html具有在其前面指定的布局。 生成网站后,布局将index.html包含为{{ content }} 。 它是倒置的,页面指定布局,然后布局调用页面,但很简单。 另一方面,post都是通过post.html文件生成的,该文件位于post.html文件夹中,即使它不是真正的布局。 像index.html一样,它基本上只是一个for循环。 这是我遇到麻烦的地方。 post.html是必填文件吗? 我可以将它重命名为story.html吗? 为什么post.html要求前面的布局? 实际post,即包含所述post文本的降价,也需要在其前部布局。 是否存在post.html与markdown文件中指定的布局不同的布局? 编辑:另一个问题。 为什么在多个地方调用{{ content }} ? index.html和布局文件都有{{content}}。 为什么布局不仅仅是{%include%} index.html而且让index.html调用{{content}}

两列Jekyll布局,用标签分隔?

我目前正在开发一个Jekyll博客,我想把我的降价文件放在这种格式中: 我希望我的代码块放在一列中,而其他所有内容(文本,标题等)都放在另一列中,以便我对我的代码进行并排解释。 有没有办法做到这一点? 在这方面,Markdown和Liquid模板引擎似乎非常严格。 谢谢!

液体模板地图filter

如何使用Liquid中的地图filter? 我在Jekyll使用它。 — my_array: [apple, banana, orage] my_map: hello: world foo: bar my_string: “how does this work?” — {{ page.my_map | map … }} 这就是我迷路的地方。 我似乎无法在文档或其他任何在线网站上找到它的任何使用示例。 顺便说一句,我不知道Ruby,所以源代码对我来说也不清楚。 从filter测试看起来下面应该会产生一些东西,但是在GitHub上,我什么都没得到: {{ site.posts | map: ‘title’ | array_to_sentence_string }} 我希望我应该得到类似的东西: My First Blog Post, Yet Another Post, and Third Posts

Jekyll模板使用类似django的液体块/inheritance

我正在以一种很大的方式进入Jekyll,并希望将其用作一般的前端开发平台,但是我遇到了Liquid模板语言的局限性,特别是它与Django模板的区别。 我发现了液体inheritancegem,它添加了Django中最重要的Extends和Block语法。 此博客文章进一步扩展了gem以适应Jekyll的文件系统: http : //www.sameratiani.com/2011/10/22/get-jekyll-working-with-liquid-inheritance.html 问题是它似乎没有以与Django完全相同的方式实现块,这实际上使得gem无用。 为了理解,我有两个jekyll“布局” – parent.html和child.html。 这些都不包含YAML部分。 亲 {% block foo %} {% endblock %} 儿童 {% extends _layouts/parent.html %} {% block foo %} Bar comes next: {% block bar %} {% endblock %} {% endblock %} 然后我有一个jekyll页面,其中包含一个YAML部分: — title: test — {% extends _layouts/child.html %} {% block bar %}My title […]

Jekyll Liquid – 动态访问_config.yml

为了国际化我的应用程序,我需要能够动态访问YAML文件中的条目。 最好用一个例子来解释: 页: — layout: default title: title_homepage — 然后,这将允许访问默认布局模板中的title_homepage变量: 默认布局: page.title =“title_homepage” 现在通常我会像这样访问我的_config.yml文件: {{ site.locales[site.default_locale].variable }} 但是,现在为此,我需要使用page.title的值访问_config.yml。 这不起作用: {{ site.locales[site.default_locale].page.title }} 我需要以下(伪代码): {{ site.locales[site.default_locale].#{value of page.title}}

如何在没有jekyll的html扩展名的情况下链接到带有page.url的页面?

我正在Jekyll建立一个网站。 要删除post中的html扩展名,我将以下内容添加到_config.yml中 permalink: /kb/:title 要从页面中删除html扩展名,我为每个页面创建了文件夹,并在每个页面文件夹中放置了一个index.html文件。 现在post和页面的工作没有html扩展,但是当我链接到带有page.url的页面时,它返回整个链接(/kb/index.html)而不仅仅是/ kb。 我可以用什么变量链接到没有html扩展名的页面?