我正在使用Jekyll Bootstrap。我可以发布一篇文章,但是我不知道为什么帖子模板把{% include JB/setup %}
放在每个帖子的降价文件中。我对露比和杰基尔知之甚少。但我查了一些文件,我能理解一些代码。但我还是不知道这是什么意思:
{% capture jbcache %}
<!--
- Dynamically set liquid variables for working with URLs/paths
-->
{% if site.JB.setup.provider == "custom" %}
{% include custom/setup %}
{% else %}
{% if site.safe and site.JB.BASE_PATH and site.JB.BASE_PATH != '' %}
{% assign BASE_PATH = site.JB.BASE_PATH %}
{% assign HOME_PATH = site.JB.BASE_PATH %}
{% else %}
{% assign BASE_PATH = nil %}
{% assign HOME_PATH = "/" %}
{% endif %}
{% if site.JB.ASSET_PATH %}
{% assign ASSET_PATH = site.JB.ASSET_PATH %}
{% else %}
{% capture ASSET_PATH %}{{ BASE_PATH }}/assets/themes/{{ page.theme.name }}{% endcapture %}
{% endif %}
{% endif %}
{% endcapture %}{% assign jbcache = nil %}
我已经检查了这个问题。我还是很困惑。这就是我的问题:
- 为什么我要在Jekyll bootstrap的每个帖子里放{% include JB/setup %} ?
- 我可以修改模板以删除每个帖子中的{% include JB/setup %}吗?
这是因为您使用的是rake post title="new post name"
命令。
查看Rakefile:
puts "Creating new post: #{filename}"
open(filename, 'w') do |post|
post.puts "---"
post.puts "layout: post"
post.puts "title: "#{title.gsub(/-/,' ')}""
post.puts 'description: ""'
post.puts "category: #{category}"
post.puts "tags: #{tags}"
post.puts "---"
post.puts "{% include JB/setup %}"
end
删除post.puts "{% include JB/setup %}"
行就可以了
这是因为JB/setup文件设置了像BASE_PATH
, ASSET_PATH
这样的变量;假设这样一个场景:在模板文件或html文件中,有以下代码然后就会出现错误。这是因为你得到一个不正确的值为ASSET_PATH
;如果你像我一样使用Jekyll bootstrap,你会在文件"root_directory"/_config中发现一些注释。
# By default, the asset_path is automatically defined relative to BASE_PATH plus the enabled theme.
# ex: [BASE_PATH]/assets/themes/[THEME-NAME]
#
# Override this by defining an absolute path to assets here.
# ex:
# http://s3.amazonaws.com/yoursite/themes/watermelon
# /assets
#
ASSET_PATH : false
不完全是。
虽然这似乎是真的,它从来没有设置,即使在基本布局,使用资产路径或类似的标签从来没有为我工作。我建议去掉它。加上'/',就像它说的,我有错误,是不正确的。'./’更正确,但杰基尔似乎没有看到其中的点。(您指向的是Linux驱动器的根目录,文件根本不在这里)
谢谢你的澄清。它的存在是没有意义的,它是在主题"安装"时添加的,这真是浪费。
你只需要布局文件夹和"theme_packs"如果你想要多个主题可用。否则,就是layouts文件夹。这些包含是针对JB的,正如这里所指出的,它本来就不存在。
你唯一需要bootstrap的实例(这在jekyll的实现中是不正确的)是一个菜单。
引导css文件javascript文件
与jekyll没有任何联系。你必须自己实现这个