【问题标题】:How to call the `handleize` Liquid filter from Jekyll plugin?如何从 Jekyll 插件中调用“handleize”液体过滤器?
【发布时间】:2014-07-15 23:01:42
【问题描述】:

我今天必须离开我的游戏,因为我什至看不到 handleize 过滤器的定义位置。它在Shopify documentation 中,当我在模板中使用它时它可以工作。但是我看不到它的源代码,所以我不知道如何从我的插件中调用它。

另请注意,虽然these two 的问题相似,但答案不适用于此处,因为handleize 未在提到的任何源模块中定义。

如果重要的话,我正在使用 Jekyll 2.1.1 和 Liquid 2.6.1。

【问题讨论】:

    标签: ruby jekyll liquid


    【解决方案1】:

    对于其他偶然发现此问题的人,from Jekyll version 2.4.0 onward,您可以使用the built-in slugify filter,它基本上完成了handleize 的作用。

    【讨论】:

      【解决方案2】:

      OK 结果证明 Shopify 文档不正确;一些记录在案的过滤器,包括handleize,在标准 Jekyll 安装中不可用。 Jekyll 核心团队已意识到文档问题,并正在努力解决这些问题。

      另请注意,在使用未知过滤器时,liquid 似乎不会标记任何错误或警告。因此,您可能(和我一样)认为过滤器“有效”,而实际上它被默默地忽略了。

      【讨论】:

        【解决方案3】:

        这是我无法使用 handleize 的解决方法:

        {{ post.title | replace: ' ', '_' }}
        

        【讨论】:

          【解决方案4】:

          也得到小写的结果:

          {{ post.title | replace: ' ', '_' | downcase }}
          

          或者干脆

          {{ post.title | slugify }}
          

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2020-07-08
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2015-12-23
            • 2017-07-27
            • 1970-01-01
            相关资源
            最近更新 更多