Jekyll是一种常见的解决方案。它是一个静态网站生成器,允许您使用Liquid模板,并且是专为在GitHub服务器上运行而设计。
一个很好的例子是来自Twitter Bootstrap文档页面中的{% include %}
特性,其中使用了header.html
和footer.html
:
我知道这是一个晚回答,但最近我偶然发现了一些东西。
原来,在http://w3schools.com/的人们创建了一些简单的JavaScript代码作为SSI的替代方案:
<!DOCTYPE html>
<html>
<script>
function w3IncludeHTML() {
var z, i, a, file, xhttp;
z = document.getElementsByTagName("*");
for (i = 0; i < z.length; i++) {
if (z[i].getAttribute("w3-include-html")) {
a = z[i].cloneNode(false);
file = z[i].getAttribute("w3-include-html");
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (xhttp.readyState == 4 && xhttp.status == 200) {
a.removeAttribute("w3-include-html");
a.innerHTML = xhttp.responseText;
z[i].parentNode.replaceChild(a, z[i]);
w3IncludeHTML();
}
}
xhttp.open("GET", file, true);
xhttp.send();
return;
}
}
}
</script>
<body>
<div w3-include-html="content.html"></div>
<script>
w3IncludeHTML();
</script>
</body>
</html>
点击这里查看。
我写了两个bash脚本,它们可以做你想要的事情(其实你也是出于同样的原因而在询问)。现在这非常基础,但对你有所帮助。文档不存在,但应该很容易弄清楚并使其适用于你的网站。
https://gitlab.com/frc-team-8733/website/-/tree/master/tools
jQuery的load()在这方面效果很好。
应该支持SSI!
<!--#include virtual="layout.html" -->