Ruby 第一次';杰基尔';用户-理解困难';自举';主题

Ruby 第一次';杰基尔';用户-理解困难';自举';主题,ruby,jekyll,Ruby,Jekyll,我是第一次jekyll和rubyuser-0体验。我正在处理这些问题,因为坦率地说,我只是想 我把我的实际问题贴在上面,因为这有很多要读的。所有细节都包括在下面 实际问题 这里发生了什么 我如何为我的Lanyon主题复制这个,这样我就不需要完全限定的名称了 如何将BASE_路径和ASSET_路径合并到我的Lanyon主题中 细节 我遵循了这里的所有说明 在大多数情况下,我并没有像我想象的那样迷失。但这就是结局。我在一些事情上有很大的差异,其中最重要的是这些全局变量的工作方式。我指的是基本路径和资

我是第一次
jekyll
ruby
user-0体验。我正在处理这些问题,因为坦率地说,我只是想

我把我的实际问题贴在上面,因为这有很多要读的。所有细节都包括在下面

实际问题
  • 这里发生了什么
  • 我如何为我的Lanyon主题复制这个,这样我就不需要完全限定的名称了
  • 如何将
    BASE_路径
    ASSET_路径
    合并到我的Lanyon主题中
  • 细节 我遵循了这里的所有说明

    在大多数情况下,我并没有像我想象的那样迷失。但这就是结局。我在一些事情上有很大的差异,其中最重要的是这些
    全局变量的工作方式。我指的是基本路径和资产路径

    如果查看
    jekyll bootstrap
    \u config.yml
    文件,一般结构如下所示,注释已删除

    好的,他们说用与你的站点相关的信息替换这些值。这就是我被绊倒的地方

  • 如果我下载一个不同的jekyll主题,这看起来有点不同。我引用了我在stackoverflow上发表的另一篇关于Lanyon的帖子,其中既没有基本路径也没有资产路径。尽管如此,我还是检查了其他主题,有些有,有些没有,但一致性并不存在

  • 如果继续探索
    jekyll bootstrap
    主题,您可以在
    \u includes/JB/
    中找到一个名为
    setup
    的特殊文件。该文件的内容如下:

  • 然后你试着求助于这个

    <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

    这似乎是所期望的行为,但正是
    设置
    文件让我困惑,并扭曲了事情

    依据;我被告知我应该调用
    ASSET\u PATH
    ,并对其主题进行限定,如下所示

    {{site.Lanyon.ASSET_PATH}

    或者,对于原始的
    引导
    主题,我想应该是

    {{site.JB.ASSET_PATH}

    现在我们回到
    设置
    文件;在
    jekyll bootstrap
    主题中,我们可以转到
    \u layouts/page.html
    ,非常清楚地看到
    设置
    文件是这样使用的


    {%include JB/setup%}
    这里发生了什么事?

    JB/setup只需根据site.JB global vars中的设置计算基本路径、主路径和资产路径。这些是您将在模板中使用的快捷方式

    我如何为我的Lanyon主题复制此名称,从而不需要完全限定的名称?

    如何将基本路径和资产路径合并到我的Lanyon主题中?

    由于Lanyon是使用基本的Jekyll而不是Jekyll引导程序运行的,所以它需要一些集成才能作为主题工作。这篇文章解释了这个过程


    因为它有点敏感,我把它放进去。第一次提交是JB base,最后一次提交是Lanyon integration。

    是的,这完全符合要求!非常感谢你。这让我发疯。
    {% 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 %}
    
    `BASE_PATH: "/myblog"`
    `ASSET_PATH: "/assets"`
    
    <link rel="stylesheet" href="{{ ASSET_PATH }}/css/site.css" />