• 虹色ミツバチ
  • freoカスタマイズメモ、テンプレート・プラグイン配布/officeTIPS
検索プラグイン

> Entry >freo>freoTips>テンプレート系TIPS> modeとworkの値によって表示を切り替える方法

【freo】【freoTips】【テンプレート系TIPS】modeとworkの値によって表示を切り替える方法

freoを利用しているサイトで表示している画面のURLには、[mode]と[work]という文字列が必ず含まれています。
例えば、「http://32877.xii.jp/index.php/view/1」「http://32877.xii.jp/index.php/page/gallery」などです。
この、「view」と「page」のことを『mode』といい、「1」と「gallery」のことを『work』といいます。

詳しくは下記を参照してください。
32877:【freo講座】【初心者の為のfreoテンプレート編集講座】【基本編(12)】freoの画面についての考え方

modeとworkに入る値によって条件を発生させたい場合の条件式の書き方は以下のとおりです。

modeの値によって表示を切り替える方法

<!--{if $smarty.request.freo.mode == 'modeの値'}-->
    modeが「modeの値」だった場合の表示
<!--{/if}-->

解説:

<!--{もしmodeが「modeの値」だったらここから}-->
    modeが「modeの値」だった場合の表示
<!--{もしmodeが「modeの値」だったらここまで}-->
使用例:

modeが[entry]または[view]だったら[freo/templates/calender.html]includeし、
modeが[page]だった場合は[freo/templates/pan.html]includeする。

<!--{if $smarty.request.freo.mode == 'entry' or $smarty.request.freo.mode == 'view'}-->
    {include file='calender.html'}
<!--{elseif $smarty.request.freo.mode == 'page'}-->
    {include file='pan.html'}
<!--{/if}-->

workの値によって表示を切り替える方法

<!--{if $smarty.request.freo.work == 'workの値'}-->
    workが「workの値」だった場合の表示
<!--{/if}-->

解説:

<!--{もしworkが「workの値」だったらここから}-->
    workが「workの値」だった場合の表示
<!--{もしworkが「workの値」だったらここまで}-->
使用例:

workが[novel]だったらページタイトルに「小説:」をつけ
workが[gallery]だった場合はページタイトルに「イラスト:」をつける

<!--{if $smarty.request.freo.work == 'novel'}-->
    小説:{$page.title}
<!--{elseif $smarty.request.freo.work == 'gallery'}-->
    イラスト:{$page.title}
<!--{/if}-->

ワンポイント

ページIDが「novel」のページの場合、modeは「page」でworkは「novel」です。
ページパス調整プラグインを使って「page」を省略した場合であっても、pageというmodeは省略されているだけで存在しますので注意して下さい。

ページ移動

関連記事

ユーティリティ

Twitter

記事検索

ページ上部へ