包含Grunt的简单PHP(或替代)

包含Grunt的简单PHP(或替代),php,gruntjs,jekyll,yeoman,Php,Gruntjs,Jekyll,Yeoman,我正在修改约曼的“webapp”构建并定制它以满足我的需要 我想在整个网站上做一些简单的重复模式,比如页眉和页脚。我对杰基尔有点涉猎,但我担心它对我的需要来说有点太复杂了 我目前正在使用PHP includes,但与Grunt的配合不太好 是否有一种简单的替代PHP include的方法或让Grunt运行PHP的方法?什么是最佳实践?如果你真的对杰基尔感到困惑,只需花一个小时浏览一下网站,你就会获得超能力。这是用于模板的纯html+用于逻辑的一点流动性,仅此而已 我真的觉得这比所有的约曼人,咕哝

我正在修改约曼的“webapp”构建并定制它以满足我的需要

我想在整个网站上做一些简单的重复模式,比如页眉和页脚。我对杰基尔有点涉猎,但我担心它对我的需要来说有点太复杂了

我目前正在使用PHP includes,但与Grunt的配合不太好


是否有一种简单的替代PHP include的方法或让Grunt运行PHP的方法?什么是最佳实践?

如果你真的对杰基尔感到困惑,只需花一个小时浏览一下网站,你就会获得超能力。这是用于模板的纯html+用于逻辑的一点流动性,仅此而已

我真的觉得这比所有的约曼人,咕哝的事情都简单


我的两分钱。

我既不知道约曼也不知道格伦特,但正如大卫·雅克在回答中所说的那样:用杰基尔制作全局页眉和页脚非常简单

您需要一个布局文件,它只是一个带有占位符的HTML文件,进入
/\u layouts
文件夹(请参阅):

我将其命名为
default.html
,因此完整的路径是:
/\u layouts/default.html

<!DOCTYPE html>
<html>
<head>
    <title>{{ page.title }}</title>
</head>
<body>

    <div>
    YOUR HEADER HERE
    </div>

    <div>
    {{ content }}
    </div>

    <div>
    YOUR FOOTER HERE
    </div>

</body>
</html>
…或
/index.md
  • 开头的
    --
    部分为
  • layout:default
    指的是先前创建的
    /\u layouts/default.html
    文件
  • 标题:…
    行将插入布局文件中的
    {{page.title}
    占位符中
无论您使用HTML还是Markdown,最终结果都将创建为
/index.HTML
,如下所示:

<!DOCTYPE html>
<html>
<head>
    <title>page title here</title>
</head>
<body>

    <div>
    YOUR HEADER HERE
    </div>

    <div>
    Some <strong>text</strong>
    </div>

    <div>
    YOUR FOOTER HERE
    </div>

</body>
</html>

页面标题在这里
你的头球在这里
一些文本
你的页脚在这里

如果要使布局更加模块化,还可以将自定义页眉和页脚移动到单独的位置。
将布局文件更改为:

<!DOCTYPE html>
<html>
<head>
    <title>{{ page.title }}</title>
</head>
<body>

    {% include header.html %}

    <div>
    {{ content }}
    </div>

    {% include footer.html %}

</body>
</html>

{{page.title}}
{%include header.html%}
{{content}}
{%include footer.html%}
两行
{%include…
是指
/\u includes
文件夹中的文件,因此您可以创建
/\u includes/header.html
/\u includes/footer.html
,并将所需的html放入这些文件中

<!DOCTYPE html>
<html>
<head>
    <title>page title here</title>
</head>
<body>

    <div>
    YOUR HEADER HERE
    </div>

    <div>
    Some <strong>text</strong>
    </div>

    <div>
    YOUR FOOTER HERE
    </div>

</body>
</html>
<!DOCTYPE html>
<html>
<head>
    <title>{{ page.title }}</title>
</head>
<body>

    {% include header.html %}

    <div>
    {{ content }}
    </div>

    {% include footer.html %}

</body>
</html>