2012年07月18日
MTタグでCookieを操作する(MTSetCookie,MTClearCookieタグ)
MTMLでCookieをセット/クリアするプラグインを作成しました。また、先日紹介した MTIfCookieタグ(Cookieを利用してスマホビューとPCビューを切り替える(MTIfCookieタグ))ではクッキーの値によってテンプレートの出し分けが可能です。これらのプラグインを使えば JavaScriptやPHPのコードを書くことなく、MTタグのみでクッキーを操作できます。
以下の例では、クッキー"foo" に 値 "bar" をセットします(テンプレートのビルド処理時に処理を行いますので、必ずしもテンプレートの先頭に書く必要はありません)。
<MTSetCookie name="foo" value="bar">
オプションで以下のモディファイアを指定できます。
<MTSetCookie name="foo" value="bar"
[expires="86400", [path="/", [domain="alfasado.net",
[secure="1", [reload="1"]]]]]>
reload="1" を追加すると、指定した名前のクッキーが新たにセットされた時にウィンドウをリロードします。
クッキーをクリアするには MTClearCookie タグを使います。MTClearCookieタグにもreload="1" を指定することができます。
<MTClearCookie name="foo">
先日のエントリで紹介した MTIfCookieタグ を利用することで、クッキーの値による出し分け処理をMTMLで記述することができます。
<MTIfCookie name="foo" eq="bar">
Cookie foo に値barがセットされている時に表示されます。
</MTIfCookie>
このタグは MT標準の MTIfタグと同様にlike、gt、lt等のモディファイアが利用できます。
Cookieそのものを取得するための MTCookieタグも用意されています(これはPowerCMSの現在のバージョンには標準で含まれています)。
<MTGetCookie name="foo" setvar="cookie_foo">
これらのタグはDynamicMTML環境下、もしくは各種 MT::Bootstrap App (mt-comments.cgiやmt-search.cgi)で利用することができます。
- カテゴリー
- テンプレート作成Tips
コメントを投稿する