跳转到主要内容

Pelican插件,用于在主题模板中应用有用的Jinja过滤器

项目描述

Build Status PyPI Version

Jinja Filters 是一个用于 Pelican 的插件,Pelican 是一个用Python编写的静态网站生成器。

Jinja Filters 为模板提供了一组函数(称为 过滤器),用于在构建您的网站时使用。它们为Pelican打包,但可能对其他使用 Jinja2 的项目很有用。

安装

安装 Jinja Filters 最简单的方法是通过使用Pip。这将自动安装所需的依赖项(目前为 pelicantitlecase)。

pip install pelican-jinja-filters

由于 Jinja Filters 是一个命名空间插件,假设您正在使用Pelican 4.5(或更高版本) 并且 使用其他命名空间插件,Jinja Filters 将会自动由Pelican加载。就这样!

如果您正在使用 Pelican 的旧版本或非命名空间插件,您可能需要在您的 pelicanconf.py 中添加 Jinja 过滤器

PLUGINS = [
    # others...
    "pelican.plugins.jinja_filters",
]

现在这些过滤器可以在您的模板中使用。

Jinja 过滤器 从 Pelican 版本 3 开始支持。

用法

目前,插件包括以下过滤器

  • datetime – 允许您更改 datetime 对象的显示格式。可以可选地提供一个 datetime 格式字符串 来获取自定义格式。

  • article_datedatetime 的一个专用版本,返回文章日期所需的 datetime;具体为 周五,2020年11月4日

  • breaking_spaces – 将非换行空格(HTML 代码  )替换为普通空格。

  • titlecase – 将提供的字符串转换为标题格式。

  • datetime_from_period – 接受在周期存档页上提供的 period,并将其转换为适当的 datetime.datetime 对象(可能用于其他过滤器)

  • merge_date_url – 给定一个 datetime(在左侧)和一个提供的 URL,“应用”日期到它上。特别适用于 YEAR_ARCHIVE_URLMONTH_ARCHIVE_URLDAY_ARCHIVE_URL

例如,在您的主题模板中,您可能有以下代码

<span class="published">
    Article Published {{ article.date | article_date }}
</span>

给出

Article Published Friday, November 4, 2020

或者使用您自己的日期格式

<span class="published">
    Article Published {{ article.date | datetime('%b %d, %Y') }}
</span>

给出

Article Published Nov 04, 2020

过滤器也可以链式使用,或按顺序应用。例如,为了删除非换行空格然后将类别名称转换为标题格式,您可能有以下代码

<a href="{{ SITEURL -}} / {{- article.category.url }}">
    {{ article.category | breaking_spaces | titlecase }}
</a>

在月度存档页面上,您可能有以下代码来链接“向上”到年度存档页面

<a href="{{ SITEURL -}} /
         {{- period | datetime_from_period | merge_date_url(YEAR_ARCHIVE_URL) }}">
    {{ period | datetime_from_period | datetime('%Y') }}
</a>

这可能给出

<a href="https://blog.minchin.ca/posts/2017/>2017</a>

贡献

非常欢迎贡献!有关更多详细信息,请参阅 贡献指南

设置开发环境

  1. 在 GitHub 上 Fork 项目,然后克隆您的 Fork。

  2. 设置并激活一个虚拟环境。

  3. 确保 invoke 在您的系统路径中或在虚拟环境中安装。

  4. 运行 invoke setup

有关更多详细信息,请参阅 贡献指南

许可

Jinja 过滤器 使用 MIT 许可证。有关完整的许可证文本,请参阅附带的 License.txt

项目详情


下载文件

下载适合您平台的文件。如果您不确定选择哪个,请了解有关 安装包 的更多信息。

源分发

pelican-jinja-filters-2.1.1.tar.gz (8.0 kB 查看散列值)

上传时间

构建分发

pelican_jinja_filters-2.1.1-py3-none-any.whl (11.2 kB 查看散列值)

上传时间 Python 3

支持者