jekyll目录结构/将index.html更改为其他页面

jekyll目录结构/将index.html更改为其他页面,jekyll,Jekyll,我是杰基尔的新手,很难按照我想要的方式进行设置。我有一个网站已经有了一个标准的目录结构:css,img和js目录,索引和页面html文件在同一级别。到目前为止一切正常 如果我运行jekyllnewblog,它会在subdir blog中设置所需的文件。但是,当我转到该目录更改基本布局文件并执行jekyll serve时,它构建得很好,找不到对整个站点有效的css文件,因为它无法“看到”更高目录中的任何内容。我尝试过搞乱css的路径,但我似乎无法让它显示出来。我尝试将所有内容从subdir“blo

我是杰基尔的新手,很难按照我想要的方式进行设置。我有一个网站已经有了一个标准的目录结构:css,img和js目录,索引和页面html文件在同一级别。到目前为止一切正常

如果我运行
jekyllnewblog
,它会在subdir blog中设置所需的文件。但是,当我转到该目录更改基本布局文件并执行jekyll serve时,它构建得很好,找不到对整个站点有效的css文件,因为它无法“看到”更高目录中的任何内容。我尝试过搞乱css的路径,但我似乎无法让它显示出来。我尝试将所有内容从subdir“blog”移动到一个级别,以便_layoutsb文件夹等与css和img目录处于同一级别,但我遇到的问题是,Jekyll只构建了一个“index.html”文件-我不想这样,我已经有了一个索引文件,它是.php,而不是.html

我怎样才能: a、 )让Jekyll在子目录中运行,但使用主css目录中的css样式、图像等

b、 )让jekyll生活在顶级目录中,但构建时做一些不是“index.html”的事情

谢谢你的帮助。我一直在构建、删除和调整,没有任何进展。

嗯,而且不支持php。但是你几乎可以用includes做任何事情,比如
包含
,你可以使用大量的函数、过滤器和其他允许你动态编写和发布静态页面的工具

好消息,不过:我找到了一个包含php文件的解决方法!;)

  • 在站点
    根目录中创建文件夹。假设它的名称是
    php
    (不带下划线)。添加任意多的php文件。假设您在
    php
    dir中包含了一个
    index.php

  • 在您的
    \u config.yml
    中,添加以下行:

    keep_files: [php]
    
  • 这将在Jekyll构建站点时允许文件夹
    php

  • 像往常一样运行
    jekyll-serve

  • 当您将链接添加到样式表(和其他链接)时,不要忘记包含php文件的文件夹将与css文件夹处于同一级别,因此请在
    index.php中执行此操作:

    <link rel="stylesheet" href="../css/main.css">
    
    
    
  • 要看到php文件生效,您需要在
    localhost
    根目录中构建站点。例如,如果使用,它将位于
    htdocs
    的内部。要查看这些文件,您需要打开
    Apache
    并在浏览器中键入:
    http://localhost/test/_site/php/
    -其中
    test
    是项目根文件夹-您将看到
    index.php
    正常工作。其他文件将通过
    \u site
    localhost:4000
    提供

  • 除非您的服务器自动生成Jekyll,否则只能将
    \u站点的内容上载到web服务器

  • 打开
    \u站点
    文件夹检查网站的构建方式

    不要忘记:您将不被允许在上托管您的站点,因为它不提供对php的支持。我建议你在一个功能齐全的托管提供商中托管你的网站

    希望有帮助