首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >第一次“jekyll”用户-难以理解“引导”主题

第一次“jekyll”用户-难以理解“引导”主题
EN

Stack Overflow用户
提问于 2014-07-18 14:39:43
回答 1查看 277关注 0票数 0

我是第一次在jekyllruby用户-0的任何一个体验。我之所以处理这些问题,是因为坦率地说,我只是想。

我把我的实际问题放在最上面,因为这是很多值得阅读的地方。然而,所有细节都包括在下面;

实际问题

  1. 这里发生了什么事?
  2. 如何为我的Lanyon主题复制这个主题,这样我就不需要完全限定的名称了?
  3. 我怎样才能让BASE_PATHASSET_PATH合并到我的Lanyon主题中呢?

详细信息

我遵守了这里的所有说明;快速启动指南

而且在大多数情况下,我并没有像我想的那样迷失方向。但到此为止。我在一些事情上有很大的差距,尤其是这些global variables是如何工作的。我指的是BASE_PATHASSET_PATH.

如果您查看_config.yml文件的jekyll-bootstrap,一般结构将如下所示,并删除注释;

JB:版本: 0.3.0 BASE_PATH: false ASSET_PATH: false

好的,所以他们说用相对于你的站点的信息来替换这些值。这就是我被绊倒的地方。

  1. 如果我下载一个不同的 jekyll主题,这看起来有点不同。我引用了关于Lanyon的另一篇关于堆栈溢出的文章,它既没有基本路径,也没有资产路径。不过,我还是检查了其他主题,有些有,有些没有,但一致性并不存在。
  2. 如果您继续探索jekyll-bootstrap主题,您可以在_includes/JB/中找到一个名为setup的特殊文件。该文件的内容如下;

{%捕获jbcache %} {%如果site.JB.setup.provider ==“自定义”%} {%包括自定义/安装%} {%其他%} {%如果site.safe和site.JB.BASE_PATH以及site.JB.BASE_PATH!‘%} {指定BASE_PATH = site.JB.BASE_PATH %} {%分配HOME_PATH = site.JB.BASE_PATH %} {% %} {%分配BASE_PATH = nil %} {%分配HOME_PATH = "/“%} {% endif %} {% %} { site.JB.ASSET_PATH %} { ASSET_PATH = site.JB.ASSET_PATH %} {% themes%} {% capture ASSET_PATH %}{ BASE_PATH }/资产/主题/{ page.theme.name }{page.theme.name}% endcapture %}{% endif %} {% endif %} {% endcapture %} {%分配jbcache =0 %}

现在请记住,我在这门语言中拥有零经验,所以我正在进行纯粹的、100%的推测,但在我看来,BASE_PATHASSET_PATH之间的某种合并是为了使ASSET_PATH成为一种附加的附加物,在我看来。如果我是对的,这就意味着如果你..。

BASE\_PATH: "/myblog" ASSET\_PATH: "/assets"

然后你试着召唤这个..。

代码语言:javascript
复制
<link rel="stylesheet" href="{{ ASSET_PATH }}/css/site.css" />

您将得到正确的路径,即/assets/themes/bootstrap-3/bootstrap/css/site.css,或者在另一个主题的情况下,比如我的lanyon one,/assets/themes/lanyon/css/site.css

这似乎是所期望的行为,但正是这个setup文件让我感到困惑,并且扭曲了周围的事情。

根据关于堆栈溢出的另一个主题,我被告知我应该用一个限定符来调用ASSET_PATH的主题,如下所示;

{{ site.Lanyon.ASSET_PATH }}

或者,在最初的bootstrap主题中,我想应该是.

{{ site.JB.ASSET_PATH }}

现在我们回到setup文件;在jekyll-bootstrap主题中,我们可以转到_layouts/page.html,我们非常清楚地看到setup文件是这样使用的。

{% include JB/setup %}

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-07-18 20:56:47

这是怎么回事?

JB/setup只计算BASE_PATH、HOME_PATH和ASSET_PATH,这取决于您在site.JB全局vars中的设置。这些都是您将在模板中使用的快捷方式。

如何为我的Lanyon主题复制这个主题,这样我就不需要完全限定的名称了?

我怎样才能让BASE_PATH和ASSET_PATH也融入我的Lanyon主题呢?

因为Lanyon是用来运行基本的Jekyll而不是Jekyll Bootstrap的,所以它需要一些集成才能作为一个主题。Jekyll Bootstrap主题API解释了这个过程。

因为它有点敏感,我把它和示例集成在我的Github中放在一起了。首先提交是JB基,最后提交是Lanyon集成。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24827657

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档