6: 2007-01-21 (日) 17:20:10 nao-pon |
現: 2013-11-01 (金) 20:46:51 nao-pon 言語ファイルの独自設定について追記 |
| + | #contents |
| + | |
| *xpWiki のXOOPSへのインストール [#hfe869a0] | | *xpWiki のXOOPSへのインストール [#hfe869a0] |
| + | RIGHT:([[English version>Install;en]]) |
| + | |
| + | xpWiki は、X-update に対応しています。XOOPS Cube Legacy (XCL) 2.2 以降をお使いの方は、X-update を導入し、管理画面の「導入・アップデート管理」から、hypconf, xpwiki を一括処理でインストール((導入・アップデート管理 - モジュールタブ - nao-pon - GitHub と進んでください。))すると、ダウンロード・解凍・アップロード・パーミッション設定などの面倒な作業をすることなく、すぐに利用開始できます。 |
| + | |
| + | また、新規に XOOPS を構築される場合は、XOOPS X ディストリビューションを強くお勧めします。XOOPS X には、予め altsys, protector, xupdate がインストールされています。 |
| | | |
| ** XOOPS 側の準備 [#qdfa8a1e] | | ** XOOPS 側の準備 [#qdfa8a1e] |
- | -XOOPS_TRUST_PATH の準備 | + | -XOOPS_TRUST_PATH の準備 (XCL 2.1 以前) |
- | --XOOPS_ROOT_PATH/mainfile.php にて XOOPS_TRUST_PATH を設定する。設定済みなら、もちろん何もしないでOK。~ | + | ++まずは、XOOPS_TRUST_PATH について理解をしてください。以下の記事が秀逸で参考になると思います。 |
| + | ---[[文系のためのXOOPS入門:http://xoops.kudok.com/]] > [[XOOPSの新型モジュールシステム「D3」の説明:http://xoops.kudok.com/d3.htm]] |
| + | ++XOOPS_ROOT_PATH/mainfile.php にて XOOPS_TRUST_PATH を設定する。設定済みなら、もちろん何もしないでOK。~ |
| XOOPS_ROOT_PATH の define 行の下に同じく define で設定してください。~ | | XOOPS_ROOT_PATH の define 行の下に同じく define で設定してください。~ |
| できれば、ドキュメントルートの外に設置できればベストです。~ | | できれば、ドキュメントルートの外に設置できればベストです。~ |
| define('XOOPS_TRUST_PATH', '/home/yourhome/xoops_trust'); | | define('XOOPS_TRUST_PATH', '/home/yourhome/xoops_trust'); |
| | | |
- | ** xpWiki の準備 [#x4676a1a] | + | *** 他モジュールとの依存関係 [#ee89db55] |
- | +xpWiki*.zip を解凍する | + | |
- | +必要なファイルをWebサーバーへアップロードする | + | - ブロックの複製機能を利用したい場合は、[[altsys モジュール:http://xoops.peak.ne.jp/search.php?query=altsys&andor=AND&mids%5B%5D=7&action=results&submit=Search]]をインストールしてください。 |
- | --html ディレクトリ以下をすべて XOOPS_ROOT_PATH ディレクトリへアップロードする。 | + | - [[protector モジュール:http://xoops.peak.ne.jp/search.php?query=protector&andor=AND&mids%5B%5D=7&action=results&submit=Search]]を使用する場合はできる限り、protector 3.02 以降を使用してください。 |
- | --trust ディレクトリ以下をすべて XOOPS_TRUST_PATH ディレクトリへアップロードする。 | + | -- 3.02 未満の場合、ref プラグインで画像を多数張った場合や付箋の移動などで、DoS/crawlerチェックに引っ掛かる可能性があります。(xpWiki 3.55 以降で対応) |
- | +XOOPS_ROOT_PATH/modules/xpwiki 以下のパーミッションを設定する(例) | + | |
- | attach 777 | + | ** xpWiki のインストール [#x4676a1a] |
- | attach/s 777 | + | |
- | private/backup 777 | + | + サーバーへの設置とパーミッション設定 |
- | private/cache 777 | + | -- 簡単インストーラー &ref(xpWiki開発日記/xpwiki_installer.cgi); を使用する方法 |
- | private/cache/*.dat 666 | + | +++ &ref(xpWiki開発日記/xpwiki_installer.cgi); を XOOPS_ROOT_PATH/ へアップロードする |
- | private/cache/page 777 | + | +++ XOOPS_ROOT_PATH/xpwiki_installer.cgi に実行権限を与える (755など) |
- | private/cache/plugin 777 | + | +++ XOOPS_URL/xpwiki_installer.cgi にブラウザでアクセスし、画面の指示に従う。 |
- | private/counter 777 | + | -- アーカイブを解凍してFTPでアップロードする方法 |
- | private/diff 777 | + | +++xpWiki*.zip を解凍する ([[ダウンロード:http://xoops.hypweb.net/modules/mydownloads/singlefile.php?cid=3&lid=22]]) |
- | private/trackback 777 | + | +++必要なファイルをWebサーバーへアップロードする |
- | private/wiki 777 | + | ----html ディレクトリの中身をすべて XOOPS_ROOT_PATH ディレクトリへアップロードする。 |
- | private/wiki/*.txt 666 | + | -----html側のモジュールディレクトリ名'xpwiki'は自由に変えてもOKです。 |
- | +XOOPS のモジュール管理にてインストールを行う。 | + | ----xoops_trust_path ディレクトリの中身をすべて XOOPS_TRUST_PATH ディレクトリへアップロードする。 |
| + | ----携帯対応レンダーをXOOPSに適用する場合で、''&font(Red){XOOPS 2.0.16aJPを使用している場合のみ};''、core_addons/html_2.0.16aJP ディレクトリの中身を XOOPS_ROOT_PATH へアップロードする。&br;(XOOPS Cube Legacy の場合は、このディレクトリは必要ありません。) |
| + | +++ XOOPS_TRUST_PATH/cache ディレクトリがなければ作成して、パーミッションを 707 などにして、ファイル作成権限を与える。 |
| + | +++ XOOPS_TRUST_PATH/class/hyp_common/favicon/cache ディレクトリのパーミッションを 707 などにして、ファイル作成権限を与える。 |
| + | +++ XOOPS_TRUST_PATH/class/hyp_common/ini/http_request.ini.dist は、http通信をする Hyp_HTTP_Request クラスの設定ファイルの雛形です。プロキシ設定などサーバー固有の設定をしたい場合は、ファイル名を "http_request.ini" として設定保存してください。&br;設定書式は、ini 形式です。 |
| + | +++ XOOPS_ROOT_PATH/class/hyp_common/cache ディレクトリのパーミッションを 707 などにして、ファイル作成権限を与える。 |
| + | +++ XOOPS_ROOT_PATH/modules/xpwiki/admin/setup.cgi に実行権限を与える(パーミッション 705, 755 etc) |
| + | +++ XOOPS_URL/modules/xpwiki/admin/setup.cgi へブラウザでアクセスする。 |
| + | ---- すべてのメッセージが'OK'であればパーミッションの設定は完了しています。&br;'NG'があった場合や正常にアクセスできない場合((サーバーの設定により setup.cgi が使用できない場合もあります。))は、以下を参考にパーミッションの設定を行ってください。 |
| + | ---- XOOPS_ROOT_PATH/modules/xpwiki 以下のパーミッションを設定する(例) |
| + | attach 707 |
| + | attach/s 707 |
| + | private/backup 707 |
| + | private/cache 707 |
| + | private/cache/page 707 |
| + | private/cache/plugin 707 |
| + | private/counter 707 |
| + | private/diff 707 |
| + | private/trackback 707 |
| + | private/wiki 707 |
| + | + XOOPSのモジュールインストールを行う |
| + | ++ XOOPS のモジュール管理にてインストールを行う。 |
| + | ++ XOOPS管理画面にて、xpWiki管理メニュー > 管理ツール一覧 > データーベースシンクロ を実行する。 |
| + | |
| + | *** XOOPS Cube Legacy 上での注意点 [#jf27e348] |
| + | |
| + | html/preload ディレクトリに HypCommonPreLoad.class.php が含まれています。これは、HypCommonPreLoad をサイトに適用するファイルです。 |
| + | |
| + | HypCommonPreLoad は、デフォルトで、スパム投稿防止フィルターなどの各種フィルターは無効になっています。設定値を変更して運用したい場合は、HypCommonPreLoad のページを参考にサイト運営ポリシーに合わせて、適宜調整してください。 |
| + | |
| + | #block(class:@caution@round,center,w:80%){{ |
| + | :&font(Red){注意};| |
| + | ~HypCommonFunc Ver 20080604 未満では、デフォルトで、すべてのフィルターが有効になっていましたが、Ver 20080604 以降では、すべての機能デフォルトで無効となりました。 |
| + | ~以前のバージョンからのアップデートで、HypCommonPreLoad の独自設定を行っていない場合で、引き続き機能を有効にしたい場合は、設定値を変更する必要があります。 |
| + | ~設定値の変更方法は、HypCommonPreLoad のページを参照してください。 |
| + | }} |
| | | |
| ** オリジナル設定の行い方 [#q24e37ed] | | ** オリジナル設定の行い方 [#q24e37ed] |
| *** 各種設定 [#eec4e765] | | *** 各種設定 [#eec4e765] |
| -各種設定は、ini ディレクトリにある *.ini.php ファイルを編集して行います。 | | -各種設定は、ini ディレクトリにある *.ini.php ファイルを編集して行います。 |
- | --各 *.ini.php ファイルの雛形(規定値)は、XOOPS_TRUST_PATH/modules/xpwiki/ini にあります。それらのファイルから必要な部分を切り出して記述してください。 | + | --各 *.ini.php ファイルの雛形(規定値)は、XOOPS_TRUST_PATH/modules/xpwiki/ini にあります。それらのファイルから必要な部分を切り出して、XOOPS_ROOT_PATH/modules/xpwiki/private/ini ディレクトリ内の同名ファイルに追加記述してください。 |
| *** プラグイン [#u32a1c57] | | *** プラグイン [#u32a1c57] |
| xpWiki のプラグインは、クラスオブジェクトになっています。XOOPS_ROOT_PATH/modules/xpwiki/private/plugin に派生クラスを置くことで、各プラグインを上書きすることができます。 | | xpWiki のプラグインは、クラスオブジェクトになっています。XOOPS_ROOT_PATH/modules/xpwiki/private/plugin に派生クラスを置くことで、各プラグインを上書きすることができます。 |
| + | |
| + | 派生クラス名は、元のクラス名にインストールディレクトリ名を加えた名称にします。 |
| + | |
| + | 例えば、amazon プラグインの場合、元のクラス名が xpwiki_plugin_amazon なので、モジュールインストールディレクトリが 'xpwiki' の場合、xpwiki_&font(Red,b){xpwiki};_plugin_amazon になり、モジュールインストールディレクトリが 'mywiki' の場合、xpwiki_&font(Red,b){mywiki};_plugin_amazon となります。 |
| | | |
| 派生プラグインは、自分で書いてもよいですが、既存の xpWiki 用プラグインを変換するツールを用意してあります。 | | 派生プラグインは、自分で書いてもよいですが、既存の xpWiki 用プラグインを変換するツールを用意してあります。 |
| 各プラグイン内の設定は plugin_NAME_init() 内に記述されていますので、その部分のみ書いておくことで、プラグインのバージョンアップ時にも柔軟に対応できます。 | | 各プラグイン内の設定は plugin_NAME_init() 内に記述されていますので、その部分のみ書いておくことで、プラグインのバージョンアップ時にも柔軟に対応できます。 |
| | | |
- | 例えば、amazon プラグインの場合次のようになります。 | + | 例えば、モジュールディレクトリ名が xpwiki の場合の amazon プラグインで associate ID のみを 'hogehoge-22' に変更したい場合は、次のようになります。 |
| | | |
| + | - XOOPS_ROOT_PATH/modules/xpwiki/private/plugin/amazon.inc.php |
| #code(php){{ | | #code(php){{ |
| <?php | | <?php |
- | class xpwiki_user_plugin_amazon extends xpwiki_plugin_amazon { | + | class xpwiki_xpwiki_plugin_amazon extends xpwiki_plugin_amazon { |
- | | + | |
- | ///////////////////////////////////////////////// | + | |
| | | |
| function plugin_amazon_init() | | function plugin_amazon_init() |
| { | | { |
| | | |
- | ///////////////////////////////////////////////// | + | parent::plugin_amazon_init(); |
- | // Settings | + | |
| | | |
- | // Amazon associate ID | + | // Amazon associate ID |
- | //define('PLUGIN_AMAZON_AID',''); // None | + | $this->cont['PLUGIN_AMAZON_AID'] = 'hogehoge-22'; |
- | $this->cont['PLUGIN_AMAZON_AID'] = 'hypweb-22'; | + | |
| | | |
- | // Expire caches per ? days | + | } |
- | $this->cont['PLUGIN_AMAZON_EXPIRE_IMAGECACHE'] = 1; | + | } |
- | $this->cont['PLUGIN_AMAZON_EXPIRE_TITLECACHE'] = 356; | + | ?> |
| + | }} |
| | | |
- | // Alternative image for 'Image not found' | + | *** 言語ファイル [#c2be6170] |
- | $this->cont['PLUGIN_AMAZON_NO_IMAGE'] = $this->cont['IMAGE_DIR'] . 'noimage.png'; | + | |
| | | |
- | // URI prefixes | + | 表示されるメッセージや文言などを独自に変更したい場合は、html 側のモジュールディレクトリに上書きする文言を記載した言語ファイルを作成することで対応できます。 |
- | switch($this->cont['LANG']){ | + | それぞれの雛形は、xoops_trust_path/modules/xpwiki/language/xpwiki 以下にあります。それぞれのファイルの中で変更したい部分を切り出して、html 側のファイルに記載します。 |
- | case 'ja': | + | |
- | // Amazon shop | + | |
- | $this->cont['PLUGIN_AMAZON_SHOP_URI'] = 'http://www.amazon.co.jp/exec/obidos/ASIN/'; | + | |
| | | |
- | // Amazon information inquiry (dev-t = default value in the manual) | + | 例えば、次のようにします。(保存時の文字コードを使用言語に合わせて下さい) |
- | $this->cont['PLUGIN_AMAZON_XML'] = 'http://xml.amazon.co.jp/onca/xml3?t=webservices-20&' . | + | |
- | 'dev-t=GTYDRES564THU&type=lite&page=1&f=xml&locale=jp&AsinSearch='; | + | |
- | break; | + | |
- | default: | + | |
- | // Amazon shop | + | |
- | $this->cont['PLUGIN_AMAZON_SHOP_URI'] = 'http://www.amazon.com/exec/obidos/ASIN/'; | + | |
| | | |
- | // Amazon information inquiry (dev-t = default value in the manual) | + | - 独自言語ファイルの配置先 |
- | $this->cont['PLUGIN_AMAZON_XML'] = 'http://xml.amazon.com/onca/xml3?t=webservices-20&' . | + | -- メイン用 |
- | 'dev-t=GTYDRES564THU&type=lite&page=1&f=xml&locale=us&AsinSearch='; | + | --- html/modules/[xpWikiモジュールディレクトリ]/language/xpwiki/[言語(ja とか ja_utf8 など)]/lng.php |
- | break; | + | -- プラグイン用 |
- | } | + | --- html/modules/[xpWikiモジュールディレクトリ]/language/xpwiki/[言語(ja とか ja_utf8 など)]/plugin/[プラグイン名].lng.php |
| + | - 独自言語ファイルのファイル内容の例 |
| + | -- メイン用 (例: 「絵文字パッド」を「絵文字入力」に) |
| + | #code(php){{ |
| + | <?php |
| + | $root->_btn_emojipad = '絵文字入力'; |
| + | }} |
| + | -- プラグイン用 (例: areaedit) |
| + | #code(php){{ |
| + | <?php |
| + | $msg = array( |
| + | 'title_error' => 'エリア編集エラー', |
| + | ); |
| + | }} |
| | | |
- | // global $amazon_aid, $amazon_body; | + | *** プロキシ設定 [#rb3fe3b7] |
| | | |
- | if ($this->cont['PLUGIN_AMAZON_AID'] == '') { | + | 外部へ接続する場合に、プロキシ設定が必要であれば、pukiwiki.ini.php に設定項目がありますが、HypCommonFunc Ver. 20080516 以降を利用している場合、実際に外部接続に使う Hyp_HTTP_Request クラスの設定ファイル http_request.ini を設定することで、一元的に設定することができます。 |
- | $this->root->amazon_aid = ''; | + | |
- | } else { | + | |
- | $this->root->amazon_aid = $this->cont['PLUGIN_AMAZON_AID'] . '/'; | + | |
- | } | + | |
- | $this->root->amazon_body = <<<EOD | + | |
- | -作者: [[ここ編集のこと]] | + | |
- | -評者: お名前 | + | |
- | -日付: &date; | + | |
- | **お薦め対象 | + | |
- | [[ここ編集のこと]] | + | |
| | | |
- | #amazon(,clear) | + | http_request.ini は、XOOPS_TRUST_PATH/class/hyp_common/ini/http_request.ini.dist が雛形となっていますので、そのファイルを編集設定し XOOPS_TRUST_PATH/class/hyp_common/ini/http_request.ini として保存してください。 |
- | **感想 | + | |
- | [[ここ編集のこと]] | + | |
| | | |
- | // まず、このレビューを止める場合、全文を削除し、ページの[更新ボタン]を押してください!(PukiWiki にはもう登録されています) | + | http_request.ini の書式は、ini 形式となっています。 |
- | // 続けるなら、上の、[[ここ編集のこと]]部分を括弧を含めて削除し、書き直してください。 | + | |
- | // お名前、部分はご自分の名前に変更してください。私だと、閑舎、です。 | + | |
- | // **お薦め対象、より上は、新しい行を追加しないでください。目次作成に使用するので。 | + | |
- | // //で始まるコメント行は、最終的に全部カットしてください。目次が正常に作成できない可能性があります。 | + | |
- | #comment | + | |
- | EOD; | + | |
- | } | + | |
- | } | + | |
- | ?> | + | |
- | }} | + | |
| | | |
| ** モジュールの複製 [#l1a988fb] | | ** モジュールの複製 [#l1a988fb] |
| | | |
- | xpWiki は GIJOE氏が提唱している D3() に準拠しています。XOOPS_ROOT_PATH 側に置く xpwiki ディレクトリの名称を好きなように変えて、アップロードすることでいくつでもインストールすることができます。 | + | xpWiki は GIJOE氏が提唱している [[D3(Duplicatable V3):http://xoops.peak.ne.jp/md/news/index.php?page=article&storyid=100]] に準拠しています。XOOPS_ROOT_PATH 側に置く xpwiki ディレクトリの名称を好きなように変えて、アップロードすることでいくつでもインストールすることができます。 |
| | | |
| | | |
| | | |
| 変換ツールは、xpWiki管理画面のプラグイン変換ツールから 'Plugin converter from PukiWiki 1.4 to xpWiki' をお使いください。 | | 変換ツールは、xpWiki管理画面のプラグイン変換ツールから 'Plugin converter from PukiWiki 1.4 to xpWiki' をお使いください。 |
| + | |
| + | 変換したプラグインは、XOOPS_&font(Red,b){TRUST};_PATH/modules/xpwiki/plugin ディレクトリに置いてください。 |
| | | |
| 上手く変換できなかった場合は、サーバーにアップロードした時点や、プラグインを呼び出した時にPHPの実行が止まって画面が真っ白になることがあります。もし、そのような状態になった時には、サーバーから削除して変換されたプラグインの内容のデバグを行ってください。 | | 上手く変換できなかった場合は、サーバーにアップロードした時点や、プラグインを呼び出した時にPHPの実行が止まって画面が真っ白になることがあります。もし、そのような状態になった時には、サーバーから削除して変換されたプラグインの内容のデバグを行ってください。 |
- | */ [#m3b27410] | |