ライセンス購入ダウンロードへHomeブログIFブロック利用事例の紹介IFブロック利用事例の紹介2014年2月6日この記事は公開日より9年以上経過しているため、現在の内容と異なる可能性があります。ver2.0からの機能、IFブロックの利用事例を紹介します。IFブロックの説明についてはドキュメントページを参考にしてください。-->上記の例では、特定のエントリーコードの場合に、表示するアイコンを変えています。IFブロックを使わずに、カスタムフィールドにクラス名を登録し、それを表示するような方法も可能です。-->上記の例では、カスタムフィールド「url_a」「url_b」があり、どちらか一方でも値がセットされていれば表示されるようになっています。{url_a}{url_b}と値をつなげて、nem(値が空ではない)かどうかを判断しています。このように、複数のフィールドを文字列としてつなげて使うことも可能です。nemのように比較対象がない記述は”{hoge}/nem”ではなく”{hoge}/nem/”と最後の/が必要になります。-->上記の例では、今見ているページ(グローバル変数の%{PAGE})とページャーのページ番号(モジュール変数の{page})が一致した時だけクラスがセットされるようにしています。グローバル変数をIFブロックに使うことができます、比較対象は必ずしも固定値である必要はなく、モジュール変数との比較にも利用できます。-->正規表現を使って、複数の値を許可する場合にも利用できます。IFブロックの注意点IFブロックはとても便利な機能ですが、いくつかのデメリットもあります。メンテナンス性の低下テンプレートファイルに直接条件を記入するため、FTPでテンプレートファイルを確認・変更できる方でないと修正ができません。サイト構築時には大きな問題ではありませんが、お客様での運用時に柔軟な調整ができません。モジュールIDでの調整でしたら、管理ページから変更が可能です。実行順序の関係で、IFブロックは最後に処理されます(これによって柔軟な条件分岐処理が可能になります)そのため、テンプレート処理が一通り動いてから条件分岐処理が行われます。エントリー一覧に出ている100件のエントリーからある1件だけを表示するような処理をIFブロックで行いますと、ページ表示には不要な99件のエントリーも一旦テンプレートに書きだされます。そのため表示速度は低下します。いった用途でのIFブロックの利用はお勧めできません。Ver.2.8ではより外部サービスと連携しやすい仕組みを用意しています。中で行われたグローバル変数の作り方講座の内容です。グローバル変数は、テンプレートに記述することで、表示...続きを読む201411/13URLコンテキスト詳細編URLコンテキストのルール、使い方を詳しく紹介します。htt...続きを読む201411/12エントリーユニットの途中に別のモジュールを入れるエントリーのユニットとユニットの間に、バナーモジュールや一覧など何か別のモジュールを表示したい場合の方法を説明します。cmsでは、検索窓や、URLコンテキストでのkeywordを使った検索、モジュールIDの設定でも検索ワードを指定したりと、検索機能に対応しております。