将网站的所有页面保存在一个模板下
AutoSite的Python项目详细描述
自动站点
Autosite帮助您将网站的所有页面保存在同一个基本模板中。跨多个页面管理导航栏、页脚甚至meta/opengraph标记都很简单。
Try it online on repl.it
PyPI
Github
Unofficial guide
安装
整体而言
您可以将autosite作为包安装。您可以cd
到构建站点的目录,并使用autosite
命令进行构建。它可以使用命令pip install autosite
或pip3 install autosite
安装,具体取决于您的配置。
嵌入
^{pip install -r requirements.txt
或pip3 install -r requirements.txt
命令(前提是您下载了该文件或将该文件写入了同一目录)。
用法
运行
autosite
。它将创建一个基本的default.html
模板和in
和includes
文件夹。编辑templates/default.html,用这些标记填写:
[#content#] - The page's content. [#path#] - The relative file path from root. [#root#] - Use this to point to the site's root folder.
您也可以使用任何其他属性,如[title]或[description],只要您在每个页面中定义它们如下。
将您的页面添加到“in”文件夹。 您可以定义一个标题和描述,或者您希望的任何其他属性,并告诉autosite文件顶部的页面使用哪个模板,如下所示:
<!-- attrib title: Your title --> <!-- attrib description: Your description --> <!-- attrib template: default --> <p>Everything under the above lines will replace [#content#] in template.html.</p>
将其他站点文件放入“includes”文件夹。输入页面可以是html或标记文件,并使用相同的属性语法。
运行脚本。需要多长时间取决于你的网站有多大。您的页面将在“out”文件夹中。
条件文本
很多网站都有一个导航,如果你在一个页面上,导航中的页面名称不是一个链接。Autosite有一个功能,可以让您复制此内容。考虑以下示例:
[path!=index.html]<a href="[#root#]index.html">[/path!=]
Home
[path!=index.html]</a>[/path!=]
您还可以省略!
符号,并且它只在是该页时才会显示,例如:
[path=index.html]<p>[/path=]
This is the index page.
[path=index.html]<p>[/path=]
条件文本不限于文件路径!几乎任何属性都可以与条件文本一起使用。
然而,条件文本仍然存在一些问题。每行只能有一个条件文本实例,它不可嵌套,也不可多行。