skins:vars:if

<%if%>

引数の条件を満たした場合に、それに続く記述を実行する。

条件を満たしていない場合は、それ以降に最初に現れる<%else%>以下の記述を実行し、<%endif%>でこの条件分岐は終了する。

<%if(条件A)%>
    条件Aに合致している時に実行するコード
<%else%>
    条件Aを満たしていない場合に実行するコード
<%endif%>

のように、3つをセットで使用する。

また、下記のように組み合わせて多重に使用することもできる。

<%if(条件A)%>
    <%if(条件B)%>
        条件Aを満たしていて、かつ、条件Bも満たしている場合に実行するコード
    <%else%>
        条件Aは満たしているが、条件Bは満たしていない場合に実行するコード
    <%endif%>
<%else%>
    条件Aを満たしていない場合に実行するコード
<%endif%>

引数

<%if(条件の種類,名前,値)%>

引数の2番目と3番目は、条件の種類によっては使用しません。

条件: category

  • <%if(category)%>

    カテゴリが選択されているかどうか

  • <%if(category,catname,カテゴリ名)%>

    選択中のカテゴリ名が第3引数の指定値と一致するかどうか

  • <%if(category,catid,カテゴリid)%>

    選択中のカテゴリidが第3引数の指定値と一致するかどうか (Nucleus v3.2からサポート)

条件: blogsetting

blogsettingの場合、第2引数はnucleus_blogテーブルのカラム名、第3引数はその値を指定します。

以下のほかにも指定できます。

付属の、/nucleus/documentation/devdocs/sqltables.htmll#nucleus_blog にてカラム名とその値の内容が参照できます。

  • <%if(blogsetting,bnumber,ブログid)%>

    選択中のブログidが第3引数の指定値と一致するかどうか

  • <%if(blogsetting,bname,ブログ名)%>

    選択中のブログ名が第3引数の指定値と一致するかどうか

  • <%if(blogsetting,bshortname,Blogの短縮名)%>

    選択中のBlogの短縮名が第3引数の指定値と一致するかどうか

  • <%if(blogsetting,bdesc,説明文)%>

    選択中のブログ説明が第3引数の指定値と一致するかどうか

  • <%if(blogsetting,bcomments,0もしくは1)%>

    選択中のブログのコメント許可の可否が第3引数の指定値と一致するかどうか

  • <%if(blogsetting,burl,ブログのURL)%>

    選択中のブログURLが第3引数の指定値と一致するかどうか

  • <%if(blogsetting,bdefskin,スキン名)%>

    選択中のブログのスキン設定が第3引数の指定値と一致するかどうか

  • <%if(blogsetting,bdefcat,カテゴリid)%>

    選択中のブログのデフォルトカテゴリ設定が第3引数の指定値と一致するかどうか

  • <%if(blogsetting,bincludesearch,0もしくは1)%>

    選択中のブログが他のブログの検索対象となっているかどうかが第3引数の指定値と一致するかどうか

TrackBackの受付許可の判別

Nucleus v3.1?以上で、かつ、インストールしているNP_TrackBackにblog別オプションがある場合のみ使用可能

  • <%if(blogsetting,trackback,0もしくは1)%>

    選択中のブログのトラックバックpingの受付の可否設定が第3引数の指定値と一致するかどうか

条件: loggedin

  • <%if(loggedin)%>

    閲覧者がログインしているかどうか

条件: onteam

  • <%if(onteam)%>

    閲覧者がログインしており、かつ、選択中のブログのチームに入っているかどうか

  • <%if(onteam,ブログ名)%>

    閲覧者がログインしており、かつ、第2引数で指定したブログのチームに入っているかどうか

条件: admin

(Nucleus v3.15からサポート)

  • <%if(admin)%>

    閲覧者がログインしており、かつ、選択中のブログの管理権限があるかどうか

  • <%if(admin,ブログ名)%>

    閲覧者がログインしており、かつ、第2引数で指定したブログの管理権限があるかどうか

条件: previtem

(Nucleus v2.5からサポート)

  • <%if(previtem)%>

    表示中の記事よりもより古い日時の記事が存在するかどうか (itemタイプ内でのみ使用可能)

条件: nextitem

(Nucleus v2.5からサポート)

  • <%if(nextitem)%>

    表示中の記事よりもより新しい日時の記事が存在するかどうか (itemタイプ内でのみ使用可能)

条件: skintype

  • <%if(skintype,スキンのタイプ名)%>

    表示しているページのスキンのタイプが第2引数の指定値と一致するかどうか。

第2引数で指定するスキンタイプ名

第2引数で指定するスキンタイプ名は以下の8つです。

archive 月別(日別)アーカイブページ
archivelist 月別(日別)アーカイブのリスト一覧ページ
error エラーページ
popup 画像ポップアップウィンドウ
indexメインの目次ページ
item個別アイテムページ
memberメンバー詳細ページ
search検索ページ

条件: hasplugin

(Nucleus v3.0RCからサポート)

  • <%if(hasplugin,プラグイン名)%>

    第2引数で指定された名前のプラグインがインストールされているかどうか

  • <%if(hasplugin,プラグイン名,プラグインのオプション名)%>

    第2引数で指定したプラグインの、第3引数で指定したオプションがyesであるかどうか

  • <%if(hasplugin,プラグイン名,オプション名=値)%>

    第2引数で指定したプラグインの、第3引数で指定したオプションが、=以下で定義した値と一致するかどうか

使用例

<%if(loggedin)%>
おかえりなさい!
<%else%>
ようこそ!
<%endif%>
<%if(category,catname,Off Topic)%>
'Off Topic' カテゴリへようこそ。
<%endif%>
<%if(skintype,error)%><%else%>
<%blogsetting(name)%>
<%endif%>
 
skins/vars/if.txt · 最終更新: 2011/03/23 21:28 (外部編集)