にゃんこうけ | src | ブログ | コンタクト | 統計 | 御串 | 小束 | 裏ミク | つ痛 | 顔本 |

10年ぶりに部屋に入るとコウモリや猫の巣窟だった

Nucleus CMS

2009-01-28 17:57:44 JST-9 | akebia | Nucleus | コメント | トラックバック | 履歴

インストールすると、通常、カテゴリに対して動作する機能が、テンプレートのアイテムの本体で動作するようになるかもしれないプラグインです。

NP_ItemCatID.php

<?php
class NP_ItemCatID extends NucleusPlugin{
  function getName()       {return 'Item Cat ID';}
  function getAuthor()     {return 'akebia';}
  function getURL()        {return 'http://nyan.co.uk/akebia/item/291';}
  function getVersion()    {return '1.0';}
  function getDescription(){return '';}
  function supportsFeature($w){return ($w == 'SqlTablePrefix') ? 1 : 0;}
  function getEventList()
    {return array('PreSkinParse', 'PreItem', 'PostItem');}
  function event_PreSkinParse(){$this->org_catid = $GLOBALS['catid'];}
  function event_PreItem($data){
    $GLOBALS['catid'] = quickQuery('SELECT icat as result FROM ' .
      sql_table('item') . ' WHERE inumber=' . $data['item']->itemid);
  }
  function event_PostItem(){$GLOBALS['catid'] = $this->org_catid;}
}
?>

NP_znItemCacheと併用する時には、NP_znItemCacheのオプションの「常に動作させるプラグイン」に「NP_ItemCatID」を加えて下さい。

NP_ItemCatIDは、アイテム毎のテンプレートが処理される直前に、Nucleusのグローバル変数「catid」にアイテムに関連付けられたカテゴリのIDを格納します。アイテム毎のテンプレートの処理が終了すると、Nucleusのグローバル変数「catid」をスキンが処理される直前の状態に戻します。こうすると、Nucleusのグローバル変数「catid」が真の時に動作するタイプの機能をアイテム毎に動作させることができます。

あけび猫は、これを、NP_ExtraSkinJPの部品タイプが「blogとcategory」の部品をアイテムの本体に挿入するのに使っています。ちょっと、使ってみている所では、問題なく動作しているようですが、今後、どのような不具合に気が付くかは謎です。

NP_ItemCatIDをインストールすると、アイテムの本体において、Nucleusのグローバル変数「catid」は、クエリ文字列等に関わらず常に当該アイテムに関連付けられたカテゴリのIDになるので、アイテムの本体において、catidがクエリ文字列等で指定されたカテゴリIDになることを前提としたテンプレートで不具合が出るかもしれません。また、アイテムの処理後にcatidがスキンの処理前の状態に戻されるので、スキンの処理中にcatidが変更される事を前提としたシステムで不具合が出るかもしれません。

人気ブログランキングへ MyMiniCity WebMoney ぷちカンパ

Comments

No comments yet

Add Comment



Trackback

このトラックバックURL(右クリックして、リンクのURLをコピー)を使ってこの記事にトラックバックを送ることができます。もしあなたのブログがトラックバック送信に対応していない場合にはこちらのフォームからトラックバックを送信することができます。トラックバックの手動送信に失敗したり、拒否された場合には、あけび猫が入力しますので、こちらまでご連絡下さい。重複したトラックバックは、自動的に1つにまとめられるようなので、気軽に色々試してみて下さい。

人気アイテム(人気順) 人気アイテム(不人気順)
  1. ドラゴンボール ブルマのHシーン  その1(116/11075)
  2. 【パパ聞き! OP】 Happy Girl 【高音質 Full】(86/823)
  3. ロアアームとタイロッドエンドのボールジョイントブーツ交換(69/6059)
  4. ソフトウェアRAID(51/5957)
  5. 【もう恋なんてしない】 もうオタなんてやめる recog 【替え歌】 (47/87)
  6. 断線したマウスケーブルの補修(46/5374)
  7. リヤハブベアリングの交換(37/4409)
  8. DENON PMA-715R ステレオプリメインアンプのリレー交換(32/1085)
  9. NP_Revision (v0.7-x) - 記事の変更履歴管理と差分表示(32/2656)
  10. 夢みるメロディー / 梶谷美由紀(31/58)
  11. やよいのエッチなロリロリお泊り会 (29/1402)
  12. 「ミドボンでソーダ充」を実践してみる(28/715)
  13. MySQLのレプリケーションを設定する(28/3297)
  14. negima 1000 sparking (full ver) (27/79)
  15. パンストED(歌詞和訳) (27/1098)
  16. ゆるゆり あっかりーんっ☆ 大事件 \アッカリ~ン/ (26/50)
  17. 【まゆとも名曲選】4月の雪/林原めぐみ (24/1116)
  18. みなみけOP 経験値上昇中☆ Full 歌詞付(23/71)
  19. Sign - Ray【あの夏で待ってる】 OP 在盛夏等待 (23/129)
  20. Denki Groove - Upside Down(22/137)
  1. それとも禁煙する(BlogPet)(2/166)
  2. かわいい猫ちゃんの画像を貼ってください。(2/258)
  3. あけび猫もほしいかな(BlogPet)(2/168)
  4. 04月04日のココロ日記(BlogPet)(2/232)
  5. bit.ly | Site Unavailable(BlogPet)(2/173)
  6. bit.ly | Site Unavailable(BlogPet)(2/179)
  7. 04月25日のココロ日記(BlogPet)(2/225)
  8. 05月02日のココロ日記(BlogPet)(2/225)
  9. 位置(BlogPet)(2/186)
  10. 挑戦するつもりだった(BlogPet)(2/192)
  11. もし,GMにマイクロソフトのような技術があったら(2/286)
  12. あけび猫は表示したかった(BlogPet)(2/204)
  13. 柔軟サーキュレーション(2/207)
  14. 表示(BlogPet)(2/217)
  15. みつどもえOP(2/163)
  16. 02月20日のココロ日記(BlogPet)(2/245)
  17. Guitar Kitteh(2/244)
  18. Heated Beer Bottle Experiment(2/252)
  19. mi-fa-pu(2/271)
  20. 01月23日のココロ日記(BlogPet)(2/248)

http://nyan.co.uk/akebia/