我想知道。你们如何处理顶部有登录和注销状态的网站场景。因此,如果有人登录,您可以说“Hello Scott”。如果有人未登录,则会显示“登录”。
我正在使用强制编译= false。并使用
(!$smarty->is_cached('index.tpl',$template_cache_id)) {
do something
}
在这种常见情况下,你们用什么来保持某些部分不缓存而其他部分缓存?我的网站是photoidentify.com
谢谢!
最佳答案
我定义了一个 block 函数,从缓存中排除小块模板。
function smarty_block_dynamic($param, $content, $smarty) {
return $content;
}
$smarty->register_block("dynamic", "smarty_block_dynamic", false);
因此,模板中由 {dynamic}{/dynamic} 包围的任何内容都不会被缓存。例如,这允许输出基于 session 的数据,例如登录的用户名等。
关于caching - smarty 缓存和登录状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1415859/