キャプチャしたコンテンツをページに複数回表示していますが、2 回目に間違った値がレンダリングされるため、キャッシュされないようにする必要があります。Smarty 3 では、新しい {nocache} ブロックと nocache フラグを使用して変数のキャッシュを防止できることを知りました。これは、この場合に役立つと思います。Smarty 2 で同じことを行う代替手段はありますか、それとも Smarty 3 にアップグレードしてこの機能を利用するしかありませんか?
1 に答える
0
Smarty2ドキュメントのキャッシングセクションをチェックしてください。これに対処する方法についていくつかの可能性が説明されています。
テンプレートの挿入機能を使用すると、ページの一部を動的に保つことができます。ページの横に表示されるバナーを除いて、ページ全体をキャッシュできるとしましょう。バナーの挿入機能を使用する と、キャッシュされたコンテンツ内でこの要素を動的に保つことができます。
もう1つの方法は、特定のテンプレートを表示する前に、そのキャッシュをクリアすることです。
require('Smarty.class.php');
$smarty = new Smarty;
...
$smarty->clear_cache('your_template_without_cache.tpl');
于 2013-02-19T20:27:29.727 に答える