【问题标题】:separate theme from content in jekyll?将主题与jekyll中的内容分开?
【发布时间】:2016-09-11 23:38:11
【问题描述】:

正如这个类似问题 (Switch theme in an existing Jekyll installation) 中所指出的,有许多 jekyll 主题可供选择。 我想将我自己的内容与使用的 jekyll 主题分开。

有没有一种好的(标准?)方式来构建jekyll 项目,以便您的内容可以与主题区分开来?

您的大部分内容都是分开的,但有一点溢出。 从链接问题的答案中可以明显看出这一点。 稍后更改主题可能会成为一个痛点。

理想情况下,我希望构建项目,以便有一个主题子目录或类似的子目录,并且可以通过指向不同的子目录来更改主题。 动态地执行此操作(使网站“可换肤”会很好,但不是必不可少的)。

在某处有动态主题吗?

【问题讨论】:

  • 基于 gem 的主题不能解决这个问题吗?
  • 你告诉我!什么是基于 gem 的主题,我将如何在此处应用它?
  • 谷歌搜索我认为您的意思是使用主题:在 _config.yml 和 github.com/jekyll/jekyll/issues/4510 中一样,我将进一步调查该行。
  • 确切地说,如果您不想制作自己主题的 gem,而只想将其放在单独的文件夹中怎么办?

标签: jekyll


【解决方案1】:

简短回答:是的,您可以将主题和内容分开,但前提是您的网站保持基本布局调用(默认、页面、帖子)。

更长的解释和例外:如果您现有的 jekyll 安装是纯的:您只编辑了页面、帖子中的内容而不是创建使用的特殊布局,那么,您可以使用 jekyll-remote -theme 插件和切换是无缝的,假设新主题没有使用默认值做一些激进的事情。

如果您现有的主题有特殊的布局(例如,splash.html 而新的没有),那么您使用相应布局的页面将成为孤立的(即,没有特殊格式的基本 html)。

我已经切换了一个已经过广泛编辑的现有安装,所以我得到了几个孤立的页面,我不得不手动切换到在新主题中有意义的布局。

总之,在许多常见情况下(例如,个人博客),您可以将内容和主题分开,但如果您想要自定义解决方案(例如,带有画廊和启动页面的个人作品集),则不能。

【讨论】:

    【解决方案2】:

    Jekyll 是一个可以很好地分离内容的工具,也可以从主题文件中分离出来。这与标准结构无关 - 尽管以下几点会有所帮助。

    1. 请勿移动或扰乱主题文件的结构,因为它可能是从第 3 方购买的。
    2. 将内容创建为块,并在运行时将 jekyll 代码插入主题中。所以如果你想在某个地方插入标题,你可以插入 {% include head.html %}。另请查看 contentblocks 插件。

    【讨论】:

      猜你喜欢
      • 2018-01-04
      • 1970-01-01
      • 2022-11-03
      • 2017-10-02
      • 2015-11-22
      • 1970-01-01
      • 1970-01-01
      • 2017-10-11
      • 2018-04-30
      相关资源
      最近更新 更多