Pelican-如何呈现HTML页面而不是标记?

时间:2018-06-27 22:09:15

标签: python pelican

我打算在Blog上重做我在Pelican的Flask网站。我已经有一些特定页面(例如,联系人,书籍等)的html文件,这些页面使用了引导卡以及markdown所无法实现的其他功能(据我所知)。

如何在构建周期中渲染它们。必须有一个配置变量吗?我找到了TEMPLATE_PAGES,但似乎没有用。这一定有可能吧?

2 个答案:

答案 0 :(得分:0)

从他们的官方文档中

http://docs.getpelican.com/en/stable/content.html#writing-content

  

Pelican还可以处理以.html和.htm结尾的HTML文件。鹈   读取元数据,以非常直接的方式解释HTML   来自meta标签,来自title标签的标题,以及来自   身体标签:

答案 1 :(得分:0)

我试图做与您相同的事情,最后找到相关文档(you can find it here,其中定义了变量DIRECT_TEMPLATES):

DIRECT_TEMPLATES = ['index', 'categories', 'authors', 'archives']
  

直接用于呈现内容的模板列表。通常,直接模板用于生成内容集合的索引页面(例如,标签和类别索引页面)。如果不需要标签和类别集合,请设置DIRECT_TEMPLATES = ['index', 'archives']

例如,假设您在templates目录中有一个文件 my_file.html 。如果要像在主题中像其他模板文件一样呈现它,而不是仅使用Markdown,可以将一个项附加到变量DIRECT_TEMPLATES中的列表中,该变量必须在配置文件中定义( pelicanconf.py )。结果应类似于以下内容:

DIRECT_TEMPLATES = [
    'index', 'categories', 'authors', 'archives',  # (default)
    'my_file'  # other HTML template to render
]

通过这种方式, my_file.html 将与其他任何使用Jinja2语法以及您要使用的所有好东西的HTML文件一起呈现。

我知道这来晚了,但希望有人(也许还是您!)将从此答案中受益。当然,这绝对是一个很好的隐藏功能...