plugins:extendedif

NP_ExtendedIf.php

このプラグインを用いると、Skin への記述に用いる if 文において、Nucleus のコアでは提供されていない条件分岐を行うことができます。

このプラグインは、ver 0.2.0 を最後に開発を終了しました。Nucleus 3.3 では後継の NP_match をお使いください。

General Plugin info
作者: Katsumi
最新のバージョン: ver 0.2.0
入手先: 下記ソースコードを参照
ソース: プラグインのソースコード
動作サンプル:
フォーラム参照先: 小技の共有 -> スキンの<%if%>の機能拡張
セキュリティチェック:  

インストール方法

  1. NP_ExtendedIf.php という名のファイルを作成し、エディタを用いてプラグインのソースコード をコピー&ペーストする(このとき、最初の <?php と最後の ?> の前後に、余分な改行が入らないように注意)。
  2. nucleus/plugins/ ディレクトリに、作成されたファイルをアップロードする
  3. 管理画面からプラグインをインストールする

このプラグインの使い方

スキン変数として、<%if(hasplugin,ExtendedIf,xxxx=xxxx)%>のように記述し、条件分岐を行います。『URL の ? 以降に指定した記述があるか』『ブログのトップページを表示しているかどうか』『どのカテゴリを表示中か』などの条件分岐が使えます。

スキンへの記述

  • スキン中で、
    <%if(hasplugin,ExtendedIf,value=XXXXX)%>

    の様に記述します。URLに"?extendedif=XXXXX"の様な記述を追加すれば、"<%if(hasplugin,ExtendedIf,value=XXXXX)%>"以降の記述が有効になります。

  • 他の使い方の例として、
    <%if(hasplugin,ExtendedIf,home=true)%>
    <%if(hasplugin,ExtendedIf,catid=2)%>
    <%if(hasplugin,ExtendedIf,subcatid=10)%>
    <%if(hasplugin,ExtendedIf,itemid=15)%>

    が在ります。それぞれ、ブログのトップページの時、カテゴリーIDが2の時、サブカテゴリIDが10の時(NP_MultipleCategoriesを使用時)、アイテムIDが15の時、有効になります。

テンプレートへの記述

  • 無し

オプション

  • 無し

Tipsと裏技

  • 小さくて単純な構造のプラグインなので、ソースコードを適当に改変すれば、他のURLのパラメータも簡単にトラックできます。
  • mod_rewrite と組み合わせることで、すっきりした URL ( ?extendedif=xxxx の記述の無い)で条件分岐を行わせることができます。

希望事項

バグ

  • ブログへのアクセスが短時間に集中して起こると、条件分岐がうまく行かない可能性があります。ブログの表示スピードにもよりますが、アクセス頻度は、平均で一分あたり一回以下が目安だと思います。 ver 0.2.0 でこの問題は解消されています。

開発履歴

  • Version 0.1 リリース (2005-09-05)
    • 最初のバージョン
  • Version 0.13 リリース (2005-11-27)
    • 機能を追加
  • Version 0.1.4 リリース (2007-1-15)
    • バグフィックス:httpsで使用の際の不具合を解消
  • Version 0.2.0 リリース (2007-4-24)
    • バグフィックス:SqlTablePrefix サポート
    • MySQL データベースを介さないようにして、高速化
    • 最後のバージョン(今後は、NP_match にてサポート)
 
plugins/extendedif.txt · 最終更新: 2011/03/23 21:28 (外部編集)