pukiwiki 構成の拡張 (複数のPukiWikiが同じコードを共有する)

メッセージ

PukiWikiをカスタマイズする作業には3種類あると考えられます。

  1. サイトの設定に関するカスタマイズ
  2. Skinなどのページデザインに関するカスタマイズ
  3. 機能拡張に関するカスタマイズ

1サイト1pukiwi か それぞれの Pukiwikiサイトの為に全ファイルをインストールしていれば 問題ないのですが、同一サーバ内では、大抵は同じ様なポリシーで構成されますので無駄が生じます。そこで提案なのですが、unix系のOSでは、/etc にデフォルトの設定が入っていて、各ユーザー側には、ユーザー固有の設定が入っていてデフォルトの設定をオーバーライドする形でソフトウェアが動作します。それと同じ様に PukiWikiデフォルトの設定の部分は直接変えないでサイト毎に設定が変えられるようにしたらどうでしょう? 現在のものでは、アップデート時などに差分を適用する形になり アップデートがちょっと面倒な感じがするのと、本体部分

WebSite -- User Site 1     - pukiwiki.php
        |                    pukiwiki.ini.php
        |                    default.php 
        |                    -backup,wiki 他 作業用ファイル
        |                    -image  : ユーザー固有イメージ
        |                    -face   : ユーザー固有フェイス
        |                    -plugin : ユーザー追加plugin
        |                    -skin   : ユーザー固有スキン
        |- User Site 2
        |- User Site 3
        |- PukiWiki Install Dir 

このようなイメージで、pukiwiki.ini.php 以外は、まず、Install Dir 側のファイルを読んでから ユーザーサイト 側のファイルを読むことにより設定をオーバーライドします。また、skinも同様です。また、plugin , image , face も同様です。同じファイル名のものがあった場合には、ユーザー側を優先するようにします。

このようにすれば、ユーザーサイトを増やす場合でも容易ですし、アップデートがあってもInstall Dir 側のファイルを変更するだけで全てに反映されます。

いかがでしょうか?



トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2011-12-09 (金) 03:33:00
Site admin: PukiWiki Development Team

PukiWiki 1.5.3+ © 2001-2020 PukiWiki Development Team. Powered by PHP 5.6.40-0+deb8u12. HTML convert time: 0.192 sec.

OSDN