我是Jekyll的新手,无法按照我想要的方式进行设置。我有一个已经具有标准目录结构的站点:css,img和js目录以及同一级别的索引和页面html文件。到目前为止很正常。
如果我运行jekyll new blog
,它会在子目录博客中设置所需的文件。但是当我进入该目录更改基本布局文件并执行jekyll serve
时,它构建正常,它无法找到对我的整个网站有效的css文件 - 因为它可以' t"见"目录中的任何内容都在进一我已经尝试搞乱css的路径,但我似乎无法让它显示出来。我尝试从子目录"博客"上升一级,以便_layoutsb文件夹等与css和img目录处于同一级别,但后来我遇到了Jekyll构建" index.html"仅限文件 - 我不想要,我已经有一个索引文件,而且它是.php,而不是.html。
我怎么能: a。)让Jekyll在子目录中运行但是使用来自主css目录的css样式,图像等
或
b。)让jekyll生活在顶级目录上但是构建做一些不是" index.html" ??
感谢您的帮助。我一直在构建,删除和调整,并且没有任何进展。
答案 0 :(得分:0)
好吧,Jekyll is a static website generator并且不支持php。但是您可以使用Liquid Templating Language执行几乎所有操作,例如includes
,您可以使用大量函数,过滤器和其他features来允许您动态编写和发布静态页面。
好消息,但是:我找到了一个包含php文件的解决方法! ;)
在网站root
中创建一个文件夹。假设它的名字是php
(没有下划线)。根据需要添加尽可能多的php文件。我们假设您在index.php
目录中添加了php
。
在你_config.yml
中,添加以下行:
keep_files: [php]
当Jekyll构建网站时,这将允许文件夹php
untouched。
像往常一样运行jekyll serve
。
当您将链接添加到样式表(和其他链接)时,不要忘记包含您的php文件的文件夹将与您的css文件夹处于同一级别,因此请在{{1 }}:
index.php
要查看php文件生效,您需要在<link rel="stylesheet" href="../css/main.css">
根目录中构建网站。例如,如果您使用Xampp,则它将位于localhost
内。要查看文件,您需要打开htdocs
并输入浏览器:Apache
- 其中http://localhost/test/_site/php/
是项目根文件夹 - 您将看到{{1}它应该工作。其他文件将通过test
和index.php
提供。
仅将_site
内容上传到您的网络服务器,除非您的服务器自动构建Jekyll。
打开localhost:4000
文件夹,查看您的网站是如何构建的。
不要忘记:您不会被允许在GitHub Pages 上托管您的网站,因为它不支持php。我建议您在功能齐全的托管服务提供商中托管您的网站。
希望有所帮助!