缓存 smarty 值,但不缓存修饰符输出
我在我的 smarty 中启用了缓存,并指定了一个日期和时间,如下所示,如果页面未缓存,则只会从数据库中获取:
$smarty->assign('added_timestamp', $added_timestamp);
我有一个自定义 smarty 修饰符,它生成一个相对周期,例如(20 分钟 5 秒前)
{$added_timestamp|relative_time}
现在我需要的是,必须缓存“$added_timestamp”的值,但是不应缓存 {$added_timestamp|relative_time}
的输出。
我尝试使用 {nocache}{$added_timestamp|relative_time}{/nocache}
但它不起作用。
有什么建议吗?
I have caching enabled in my smarty and have assigned a date and time as below that will only be fetched from database if the page is not cached:
$smarty->assign('added_timestamp', $added_timestamp);
I have a custom smarty modifier that generate a relative period like (20 minutes 5 seconds ago)
{$added_timestamp|relative_time}
now what I need is, the value for '$added_timestamp' must be cached however the output from {$added_timestamp|relative_time}
should not be cached.
I tried with {nocache}{$added_timestamp|relative_time}{/nocache}
but it doesn't work.
any suggestions?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您需要将relative_time修饰符包装在函数插件中。该函数插件可以使用 nocache 标志注册(修饰符不能)。
和
(Smarty3 语法)
you will need to wrap your relative_time modifier in a function plugin. that function plugin can be registered with the nocache flag (modifiers can't).
and
(Smarty3 syntax)