ruby 在一个网站上使用多种主题jeykll

chhqkbe1  于 11个月前  发布在  Ruby
关注(0)|答案(5)|浏览(150)

我最近发现了关于jekyll,并希望使一个项目的着陆页与它.我想有一个主页使用一个主题(例如. ubuild),并有另一个页面的文档(通过在顶部的导航栏访问),使用不同的主题(例如. just-the-docs).我怎么才能去做这件事?
编辑:我想使用Github页面。

ttvkxqim

ttvkxqim1#

由于您计划在单个页面上使用其中一个主题,我认为最好的解决方案是使用两个基本布局而不是两个主题。
这将需要一些小的工作开始,但将大大减轻未来的维护。
首先设置站点为 * 所有页面 * 呈现just-the-docs主题,包括着陆页。然后将_layouts/home.html修改为 * 父布局 *(如default布局),以呈现ubuild..主题的标记。

ttisahbt

ttisahbt2#

我在@JoostS的回答的帮助下解决了这个问题,但做了一些修改:
1.使用名为<org-name>.github.io的仓库在GitHub页面上创建一个组织。这个仓库应该包含主页的主题(在我的例子中是ubuild)和所有内容。
1.制作另一个repo与jeykll网站,称为docs。这个网站应该有你想要的其他页面的主题(在我的情况下just-the-docs)和所有的内容沿着。
1.在docs存储库中,baseurl: "/docs"添加到_config.yml

  1. <org-name>.github.io存储库现在应该托管在<org-name>.github.io/上:
    x1c 0d1x的数据
  2. docs存储库现在应该托管在<org-name>.github.io/docs URL:



1.要链接到docs页面,您现在应该可以使用/docs

c9qzyr3d

c9qzyr3d3#

解决方案是创建两个单独的网站。第一个网站只包含主页,应该部署到Web文件夹的根目录。第二个网站包含所有文档,应该部署到一个目录,如“/docs/”。您可能需要为此使用baseurl:https://byparker.com/blog/2014/clearing-up-confusion-around-baseurl/
我不认为你可以在Github页面上使用这个解决方案。你可以尝试将相同的CNAME添加到两个仓库,因为我不是100%确定。任何其他静态托管环境都应该工作。
您可以通过链接到'/'来从文档链接到主页。您可以通过链接到'/docs/pagename/'来从主页链接到文档(假设您使用permalink: pretty)。

kse8i1jr

kse8i1jr4#

使用Jekyll和GitHub Pages在同一网站上维护两个布局的最简单方法是为新布局创建一个新的存储库,因此主网站位于GitHub组织中,需要使用不同布局的页面必须位于您的存储库中。
但是,如果你不使用GitHub,只使用jekyll,只需将每个文件夹配置为一个新的Jekyll项目,并指示它们写入_site文件夹中的相应文件夹。为了解决所有问题,你需要从主文件夹启动Jekyll Server,然后单独构建每个子文件夹,这样它就可以在不删除主文件夹的情况下更新

a8jjtwal

a8jjtwal5#

在一个single Jekyll based Github Pages site中可以使用多个jekyll主题。我使用的方法是基于@Delfino的答案,使用jekyll作为单独的Jekyll项目。需要配置设置,以确保网站在本地和Github页面上正确构建。
前面提到的article包含了所有细节。变量keep_filesexclude在根文件夹的_config.yml中设置,而destination需要在_site中正确设置。然后,在_site中构建站点,提交生成的文件夹并将更改推送到gh-pages
存储库是also available on github,此commit

希望上面的帮助。

相关问题