【问题标题】:How to get current year in a Nunjucks template within Apostrophe CMS如何在 Apostrophe CMS 中的 Nunjucks 模板中获取当前年份
【发布时间】:2020-01-18 00:24:54
【问题描述】:

我正在将版权行添加到我一直在处理的网站的页脚中,但我找不到将当前动态动态放入页脚的最佳方法,因此我无需再次设置它。我尝试了多种方法,包括可以从任何地方访问的全局设置,但没有任何效果。

任何反馈都将不胜感激。谢谢。

【问题讨论】:

    标签: datetime apostrophe-cms nunjucks


    【解决方案1】:

    写一个撇号CMS nunjucks helper function。有关此问题的一般问题,请参阅这些文档。您的具体功能可能如下所示:

    self.addHelpers({
      thisYear: function() {
        return new Date().getFullYear();
      }
    });
    

    如果你把它放在你自己的模块的construct 中,假设它叫做helpers,那么你可以在Nunjucks 中将它称为{{ apos.helpers.thisYear() }}

    这些非常方便,请记住它们不能做任何异步工作。

    【讨论】:

    • 感谢您的回复。我已将上面的代码添加到模块和模板中,但出现以下错误:Unable to call apos["helpers"]["thisYear"], which is undefined or falsey
    • 模块的别名选项是否设置为“helpers”?
    • 我使用的代码如下。还值得补充的是,当我将此模块添加到 app.js 文件时,我的服务器将不会运行。这是helpers 模块目录中 index.js 文件的内容:module.exports = { extend: 'apostrophe-module', label: 'Helpers', alias: 'helpers', construct: function(self, options, callback) { self.addHelpers({ thisYear: function() { return new Date().getFullYear(); } }); } };
    • 您选择为构造包含回调,但从未调用它。完全移除回调参数。
    • 解决了这个问题。感谢您的帮助。
    猜你喜欢
    • 2017-10-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-05
    • 2011-09-09
    • 1970-01-01
    • 2011-08-25
    相关资源
    最近更新 更多