xpWiki 5.01.22 リリース
xpWiki開発日記
HypCommonFunc
xpWiki 5.01.22
PukiWiki 1.4.8_alpha をベースにした Wikiモジュールです。
xpWiki (えっくすぴーうぃき)
インストール手順
xpWiki のXOOPSへのインストール
xpWiki は、X-update に対応しています。XOOPS Cube Legacy (XCL) 2.2 以降をお使いの方は、X-update を導入し、管理画面の「導入・アップデート管理」から、hypconf, xpwiki を一括処理でインストール*2すると、ダウンロード・解凍・アップロード・パーミッション設定などの面倒な作業をすることなく、すぐに利用開始できます。
また、新規に XOOPS を構築される場合は、XOOPS X ディストリビューションを強くお勧めします。XOOPS X には、予め altsys, protector, xupdate がインストールされています。
XOOPS 側の準備
- XOOPS_TRUST_PATH の準備 (XCL 2.1 以前)
- まずは、XOOPS_TRUST_PATH について理解をしてください。以下の記事が秀逸で参考になると思います。
- XOOPS_ROOT_PATH/mainfile.php にて XOOPS_TRUST_PATH を設定する。設定済みなら、もちろん何もしないでOK。
XOOPS_ROOT_PATH の define 行の下に同じく define で設定してください。
できれば、ドキュメントルートの外に設置できればベストです。
[例]define('XOOPS_TRUST_PATH', '/home/yourhome/xoops_trust');
他モジュールとの依存関係
- ブロックの複製機能を利用したい場合は、altsys モジュールをインストールしてください。
- protector モジュールを使用する場合はできる限り、protector 3.02 以降を使用してください。
xpWiki のインストール
- サーバーへの設置とパーミッション設定
- 簡単インストーラー xpwiki_installer.cgi を使用する方法
- xpwiki_installer.cgi を XOOPS_ROOT_PATH/ へアップロードする
- XOOPS_ROOT_PATH/xpwiki_installer.cgi に実行権限を与える (755など)
- XOOPS_URL/xpwiki_installer.cgi にブラウザでアクセスし、画面の指示に従う。
- アーカイブを解凍してFTPでアップロードする方法
- xpWiki*.zip を解凍する (ダウンロード)
- 必要なファイルをWebサーバーへアップロードする
- html ディレクトリの中身をすべて XOOPS_ROOT_PATH ディレクトリへアップロードする。
- xoops_trust_path ディレクトリの中身をすべて XOOPS_TRUST_PATH ディレクトリへアップロードする。
- 携帯対応レンダーをXOOPSに適用する場合で、XOOPS 2.0.16aJPを使用している場合のみ、core_addons/html_2.0.16aJP ディレクトリの中身を XOOPS_ROOT_PATH へアップロードする。
(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" として設定保存してください。
設定書式は、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'であればパーミッションの設定は完了しています。
'NG'があった場合や正常にアクセスできない場合*3は、以下を参考にパーミッションの設定を行ってください。 - 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
- すべてのメッセージが'OK'であればパーミッションの設定は完了しています。
- 簡単インストーラー xpwiki_installer.cgi を使用する方法
- XOOPSのモジュールインストールを行う
XOOPS Cube Legacy 上での注意点
html/preload ディレクトリに HypCommonPreLoad.class.php が含まれています。これは、HypCommonPreLoad をサイトに適用するファイルです。
HypCommonPreLoad は、デフォルトで、スパム投稿防止フィルターなどの各種フィルターは無効になっています。設定値を変更して運用したい場合は、HypCommonPreLoad のページを参考にサイト運営ポリシーに合わせて、適宜調整してください。
- 注意
HypCommonFunc Ver 20080604 未満では、デフォルトで、すべてのフィルターが有効になっていましたが、Ver 20080604 以降では、すべての機能デフォルトで無効となりました。
以前のバージョンからのアップデートで、HypCommonPreLoad の独自設定を行っていない場合で、引き続き機能を有効にしたい場合は、設定値を変更する必要があります。
設定値の変更方法は、HypCommonPreLoad のページを参照してください。
オリジナル設定の行い方
各種設定
プラグイン
xpWiki のプラグインは、クラスオブジェクトになっています。XOOPS_ROOT_PATH/modules/xpwiki/private/plugin に派生クラスを置くことで、各プラグインを上書きすることができます。
派生クラス名は、元のクラス名にインストールディレクトリ名を加えた名称にします。
例えば、amazon プラグインの場合、元のクラス名が xpwiki_plugin_amazon なので、モジュールインストールディレクトリが 'xpwiki' の場合、xpwiki_xpwiki_plugin_amazon になり、モジュールインストールディレクトリが 'mywiki' の場合、xpwiki_mywiki_plugin_amazon となります。
派生プラグインは、自分で書いてもよいですが、既存の xpWiki 用プラグインを変換するツールを用意してあります。
変換ツールは、xpWiki管理画面のプラグイン変換ツールから 'xpWiki Plugin converter from System to User' をお使いください。
各プラグイン内の設定は plugin_NAME_init() 内に記述されていますので、その部分のみ書いておくことで、プラグインのバージョンアップ時にも柔軟に対応できます。
例えば、モジュールディレクトリ名が xpwiki の場合の amazon プラグインで associate ID のみを 'hogehoge-22' に変更したい場合は、次のようになります。
- XOOPS_ROOT_PATH/modules/xpwiki/private/plugin/amazon.inc.php
1 2 3 4 5 6 7 8 9 10 11 12 13 14
class xpwiki_xpwiki_plugin_amazon extends xpwiki_plugin_amazon { function plugin_amazon_init() { parent::plugin_amazon_init(); // Amazon associate ID $this->cont['PLUGIN_AMAZON_AID'] = 'hogehoge-22'; } } ?>
プロキシ設定
外部へ接続する場合に、プロキシ設定が必要であれば、pukiwiki.ini.php に設定項目がありますが、HypCommonFunc Ver. 20080516 以降を利用している場合、実際に外部接続に使う Hyp_HTTP_Request クラスの設定ファイル http_request.ini を設定することで、一元的に設定することができます。
http_request.ini は、XOOPS_TRUST_PATH/class/hyp_common/ini/http_request.ini.dist が雛形となっていますので、そのファイルを編集設定し XOOPS_TRUST_PATH/class/hyp_common/ini/http_request.ini として保存してください。
モジュールの複製
xpWiki は GIJOE氏が提唱している D3(Duplicatable V3) に準拠しています。XOOPS_ROOT_PATH 側に置く xpwiki ディレクトリの名称を好きなように変えて、アップロードすることでいくつでもインストールすることができます。
PukiWiki 用プラグインの取り込み
PukiWiki プラグインを xpWiki プラグインに自動変換することができます。ただし、すべてのプラグインが問題なくできるとは限りません。
変換ツールは、xpWiki管理画面のプラグイン変換ツールから 'Plugin converter from PukiWiki 1.4 to xpWiki' をお使いください。
変換したプラグインは、XOOPS_TRUST_PATH/modules/xpwiki/plugin ディレクトリに置いてください。
上手く変換できなかった場合は、サーバーにアップロードした時点や、プラグインを呼び出した時にPHPの実行が止まって画面が真っ白になることがあります。もし、そのような状態になった時には、サーバーから削除して変換されたプラグインの内容のデバグを行ってください。
最近の開発日記
xpWiki開発日記 最新の15件
CKEditor 4 で絵文字を使う方法??
毎度お世話様です。
貴サイトでは、d3foram の新規投稿・返信で絵文字が使えるようになりました。
どのようにすれば、貴サイトのようになるのか御教授いただきたく御願いします。
【やってみたこと】
小生の本家サイト(利用している全てのモジュールは最新です)にて CKEditor 4 を適用してみましたところ
- d3foram の新規投稿・返信で Wiki エディタと BB-Codeエディタの切り替えが可能になりました。
しかし、絵文字は表示されませんでした。
- 小生サイトでは、こちらの方法により絵文字を表示させておりました。
この方法ではのプラグインを利用していることと推察します。html側/class/smarty/plugins/filefunction.hyp_emoji_pad.php html側/class/smarty/plugins/filemodifier.hyp_emoji_pad.php
- ここに CKEditor 4 をインストールすると
のプラグインが加味されます。
html側/class/smarty/plugins/function.ck4dhtmltarea.php
- これらのプラグインに関係することかしらん(?)と思っているのですが..
それとも、こちらで御教授いただいたように
「Twitter Bootstrap 対応のテーマ」を利用しなければならないのでしょうか??
Re: RE:Re: gnavi-exif_supprtの感想
毎度お世話様です。
丁寧に御説明いただきありがとうございます。
しかし、いまいち理解が及びません。
なお、本書き込み前に X-update で hypconf 及び gnavi-exif_supprt を最新に更新しました。
gnavi-exif_supprt と ckeditor4 組み合わせで利用した場合
管理者に「WYSIWYGで編集可」を許可しているので、HTML エディタが採用されます。Wiki エディタは、BB-Code エディタの一種なので、HTML エディタとして使用することができませんので、この動作で問題ありません。
との御指導です。
しかし、先に質問いたしましたとおり
「Wiki エディタ」と「BB-Codeエディタ」の切り替えボタン
が出ない状態です。
昨日添付した画面
これは「管理者は、いつでも HTMLエディタ」しか使えないということです。
管理者にも切り替えボタンが表示され、使用するエデッターを選択できるほうが良いと思うのですが..
ちなみに、d3foram では 切り替えボタン が表示されます。
- 「HTML エディタ」・「Wiki エディタ」・「BB-Codeエディタ」の3つ切り替えボタンは鬱陶しいですかね
gnavi-exif_supprt を単独で利用した場合(ckeditor4 が無い)
先の質問の仕方が下手だったかもしれません。
もう一度言い直せば
- 管理者では 切り替えボタン が出ないが、ゲストでは 切り替えボタン が出るのは如何な物でしょうか??
引用:
と図示していただきましたが、そもそも ckeditor4 がインスチールされていない場合に 切り替えボタン が表示されるのは、混乱すると思うのですが..
【追加質問】です
ただ、XCL 標準の BB-Code エディタの場合に、Wiki エディタが適用されてしまう
(この発言に関連することかも知れませんが..ckeditor4 が無い場合で)
- (ゲストでは 切り替えボタン が表示されますが)
- BB-Code エディタ とした場合、画面左下に絵文字パッド選択ボタンが出ます。
- BB-Code エディタ とした場合、画面左下に絵文字パッド選択ボタンが出ます。
- Wiki エディタ とした場合、絵文字パッド選択ボタンが出ません。
- Wiki エディタ とした場合、絵文字パッド選択ボタンが出ません。
このことは逆じゃ〜と思ってしまいました。
- 追伸
この書き込みの後、d3foramに絵文字を適用するテンプレートを設定しました。
上記は小生の誤解であるようですね
Re: CKEditor 4 で絵文字を使う方法??
ありがとうございました。
絵文字が表示されました。
お手数をお掛けしました。
baobab
Re: RE:Re: gnavi-exif_supprtの感想
GNavi の投稿画面では、その投稿が HTML 有効か無効かのモード選択ができないので、現状のような実装になっています。
投稿画面で、HTML を有効にするかどうかを選択できるようにしたほうが、よいかも知れませんね。
この辺りも、旧来の利用者さんに戸惑いを与えないように投稿画面のレイアウトを考えていきたいですね。
Re: baobab
baobab さん、こんにちは。
[添付] がリンクになっていて、そこをクリックするとアップロード画面がポップアップして、そこからファイルをアップロードできるはずなのですが、そうなりませんか?
スマホで表示されない
いつもお世話になっております。
この最近になって、利用者の方からスマホの機種変更をすると、サイトが真っ白で何も表示されないという問い合わせが数件来ました。
一人は、前機種もスマホでSoftbank 003SH、現機種がSoftbankの 106SHとの事でした。
その方は、オーバーレイの広告だけが表示されるようでした。
ひょっとして、広告タグとjQuery mobileの干渉(http://hpwb.net/Wj0mj2)かと思い、一度広告タグを全て外して、再度アクセスをしてもらいましたが、やはり真っ白のままとの返答でした。
本日、HypCommonFuncを一番新しい20130208_1にしてみましたが、
当方のスマホがiPhone 4Sで、以前も今も表示されないという状況になったことがありません。
スマホ側のクッキーやキャッシュを削除してもらっても、改善はされないようでした。
MySQLでセッションのデータもクリアしてみましたが変わりませんでした。
PHPデバグで確かめたいのですが、当方の機種では表示されるのと、Firefoxのエミュレータ表示では問題なく表示されるので、今はまだ未確認です。
Android SDKを昔は入れていたのですが、PCを新調してからまだ未導入ですので、またSDKを入れて確認はしてみたいと思います。
お一人なら特有の問題かとも思ったのですが、昨日また別の方が機種変更をしたら表示されないという報告を頂いたので、もし何かお気づきの点などありましたら、ご教示頂けますと幸いです。
いずれも、アンドロイドのスマホのみ報告が来ております。
宜しくお願い申し上げます。
Plugin
名探偵コナン 53 (マイファーストビッグ)
FAIRY TAIL 36 特装版 (少年マガジンコミックス)
FAIRY TAIL 36 DVD付き特装版
53名探偵コナン 園
名探偵コナン 53 (My First Big)
Re: Plugin/gmap
お忙しい中、回答いただき ありがとうございます。
よろしくお願いします。
【追伸】
Google Maps API V3 に対応したプラグインと、以前おねだりしましたブロックのページ表示機能を組み合わせて使うと、G-navi を利用しなくても同等(以上)の活用方法ができるな〜と思っていますよ