XREAで完璧XOOPS その8
| ※ 本ページは凍結されました。 ※ 以後、XOOPS/PukiWikiで 最新更新いたします。 |
| 副題 | あの便利な Lightbox Plus を myAlbum-P 2.9 に実装しようか |
| 英語化 | 本ページの短縮URL: http://js2007.fs4y.com/?e=8 |
| 本ページ本文最終更新日時: | 関連リンク | |||
| 2007/08/18 03:30 JST | 「XOOPSの話題」へ戻す | 複数サーバーで処理速度を向上 | ||
| 基本順路に戻る >>「XREAで完璧XOOPS その1」 | ||||
【目次】
- 参考デモページ
- 当モジュールの特徴
- Lightbox Plus を実装した、MyAlbumモジュールの配布開始
- 必要と思われるスキルとは
- ダウンロード
- プレ・インストール
- モジュール「 myalbum8 」利用検証の意義
- モジュール「 myalbum9 」利用検証の意義
- さあ、あなたの myAlbum-P 2.9 にインストールしましょうか
- Q&A
- 応用
- 全てのモジュールでLightboxを利用する方法
- ※ 順 路
参考デモページ
| 各ブラウザーでの表示例 | ||
| Firefox1.5.0.11 | IE6 | Opera |
![]() | ![]() | ![]() |
| Lunascape4(Gekko) | Lunascape4(IE) | Sleipnir |
![]() | ![]() | ![]() |
| HAMSTER Site - ハム画像+ さて、Lightbox Plus についての詳細な記事は、「 Lightbox Plus を使ってみる 」をご覧下さい。 | ||
当モジュールの特徴
- テーマの編集は無用です。
- MyAlbum-Pの「 photo.php 」を起動するまでは、クライアントプロセスに負荷を与えません。
- 画像以外をMyAlbum-Pの「 photo.php 」で表示した場合、クライアントプロセスに負荷を与えません。
つまり、画像種に限定してMyAlbum-Pの「 photo.php 」で表示した場合に Lightbox Plus 環境を自動的に構築します。
Lightbox Plus を実装した、MyAlbumモジュールの配布開始
【本Wikiページの目的】:- 既存稼動中のXOOPS2モジュール「 myAlbum-P 2.9 」に簡単にアドオン導入を可能にする
- また、簡単にアンインストールを可能にする
- 既存稼動中とは別の「 myalbum8 」や「 myalbum9 」でテスト可能
- 無駄、無用なJavaスクリプトを発生させない。「 photo.php 」実行時に、画像ファイルの場合だけ、Lightbox Plus 環境を構築する。PDFファイルや、圧縮化ファイル時は、target=_blank となって、無用な Lightbox Plus スクリプトを発生させない。
※ 以上を達成するためにモジュール配布を行います。
必要と思われるスキルとは
※ 本Wikiでの解説では、XOOPS2のモジュールの導入については既に理解ができる方を対象にしております。また、「 myAlbum-P 2.9 」の詳細操作のご案内は割愛します。
つまり初めて「 myAlbum-P 2.9 」をご利用になる方は、当方のインストールの前に、「 myAlbum-P 2.9 」正規配布品のダウンロードと、インストール、そして利用する為の調整を行って、「 myAlbum-P 2.9 」の操作に慣れて下さいませ。もしも文字化けが起こる場合は、本ダウンロードによって改善される場合がありますので、落胆されないように願います。
ダウンロード 
PukiWikiModでご案内しております。
プレ・インストール
- 1.Lightbox Plus共有基本ディレクトリーの転送
- 配布ディレクトリー「 modules / myalbum / LightboxPlus 」をそのまま転送願います。本段階で、何も影響しません。
- 2.必要なら myalbum8 ディレクトリーの転送とモジュールインストールとテスト
- 「 modules / myalbum8 」をそのまま転送願います。
- 3.必要なら myalbum9 ディレクトリーの転送とモジュールインストールとテスト
- 「 modules / myalbum8 」をそのまま転送願います。
※モジュール「 myalbum8 」なり「 myalbum9 」を通常のモジュールのようにインストールします。基本の「 myalbum 」と全く同じです。モジュール「 myalbum8 」なり「 myalbum9 」を利用する場合には、Lightbox Plus共有基本ディレクトリーとなる「 myalbum 」下に当配布物である「 LightboxPlus 」ディレクトリーとその下のファイル群が必須です!
モジュール「 myalbum8 」利用検証の意義
※ PHPのバージョンや、MySQLのバージョン、そして.htaccessなどの指定によって、mbstring機能の効果によって、文字化けが無いことを検証する目的のモジュールです。
つまり「 submit.php 」なり「 editphoto.php 」は、配布元のオリジナルです。さて、文字化けは起こりませんか?! 起きなければ、とても幸せなことです。「 submit.php 」なり「 editphoto.php 」の改竄は無用だと言うことです。
筆者の経験では、Free Web Hosting の中には、mbstring変換パラメーターの設定を許可していないサーバーもありました。そのようなサーバーに遭遇しても、文字化けしないようにすることを考えることは必要でした。
モジュール「 myalbum9 」利用検証の意義 
※ 筆者は、mbstringに関する指定を省くことによって、少しでもサーバー側のストレスを軽減させて、尚且つ、文字化けしない「UTF−8なXOOPS2」を目指してきました。そこで、「 myalbum8 」のオリジナル配布品のコードを改竄したのが「 myalbum9 」です。「 submit.php 」なり「 editphoto.php 」を改竄しています。mbstring変換に依存しない設定時に「 myalbum8 」のオリジナル配布品で文字化けが起こる場合に、是非「 myalbum9 」を試してみてください。
※ 改訂内容は、
http://xoops.peak.ne.jp/modules/d3forum/index.php?...
で詳しく触れております。この当時のレポートでは、「プレビュー」機能が不備ですが、本Wikiでの配布品では当然改訂しております。
※ XREAサーバーでは、PHP4+MySQL4系統も、PHP5+MySQL5系統でも、myalbum の管理画面で、カテゴリーの登録/編集において漢字の文字化けは起こりませんが、他のサーバーではカテゴリー編集時に漢字の文字化けを起こす場合があります。そこで、myalbum / admin / index.php を改訂しました。これでカテゴリー登録も文字化け無しですね。
※ また、PHPによっては警告を表示しますので、myalbum / include / read_configs.php を改訂しました。
さあ、あなたの myAlbum-P 2.9 にインストールしましょうか
※ 文字化けがあって、改竄された「 submit.php 」なり「 editphoto.php 」を利用する筆者製の(笑) 「 myalbum9 」を利用すると、文字化けが無くなりましたか? それとも最初から文字化け無しですか? 既に myAlbum-P 2.9 を利用されているのですから、文字化け対策済みですよね。 それでも近い将来、新しいサーバーに移転する時には、思い出してみてください。「 今度は、mbstring変換プロセス抜きでスタートしますか。 」ですよね。
※ 筆者は、ここまで、mbstringに関して無指定なまま、XREAでは利用できております。 mbstring変換が無いだけ処理は早いはずですよね。 (^^)
モジュール「 myalbum8 」で文字化けなく、Lightbox Plus を利用できた場合のインストール
※ アンインストールする場合に備えて、上書きするのではなく、元ファイルはリネームしておきましょうか。それともバックアップを行ってください。
- 1.add_module / myalbum / photo.php を導入します。
- 言語に依存しませんので、EUC-JPなXOOPS2でも利用できますよね。
- 2.add_module / myalbum / templates / myalbum_photo.html を導入します。
- myalbumモジュールの副番に合致したテンプレートを間違い無く選択しコピーしてください。
- 3.MySQL内のDBのテンプレートを更新しなければ、目的地に到達しません。
- 「 XREAで完璧XOOPS その6 - XOOPSテンプレート管理モジュール「 tplsadmin module 1.01 」の導入と更新処理 」を参照願います。順路の通りに読まれた方は、既に tplsadmin module 1.01 を利用されてますね。
モジュール「 myalbum9 」で文字化けなく、Lightbox Plus を利用できた場合のインストール 
※ アンインストールする場合に備えて、上書きするのではなく、元ファイルはリネームしておきましょうか。それともバックアップを行ってください。
- 1.add_module / myalbum / photo.php , submit.php , editphoto.php
add_module / myalbum / admin / index.php
add_module / myalbum / include / read_configs.php を導入します。 - 言語に依存しませんので、EUC-JPなXOOPS2でも利用できますよね。
- 2.add_module / myalbum / templates / myalbum_photo.html を導入します。
- myalbumモジュールの副番に合致したテンプレートを間違い無く選択しコピーしてください。
- 3.MySQL内のDBのテンプレートを更新しなければ、目的地に到達しません。
- 「 XREAで完璧XOOPS その6 - XOOPSテンプレート管理モジュール「 tplsadmin module 1.01 」の導入と更新処理 」を参照願います。順路の通りに読まれた方は、既に tplsadmin module 1.01 を利用されてますね。
Q&A
Q: ちょっとだけ、Lightbox Plus の機能をOFFしたいのですが、簡単ですか?
- A はい簡単です!
- ディレクトリ−「 myalbum 」下に配置されたLightbox Plus共有基本ディレクトリー「 LightboxPlus 」ディレクトリーをリネームするだけです。これで、全ての「 myalbum, myalbum0 〜 myalbum9 」が自動的にオリジナルな仕様に戻ります。
Q: 独自のオーバーラップ画像との交換は可能でしょうか?
- A はい簡単です。(*^^*)
- ディレクトリ−「 myalbum / LightboxPlus 」ディレクトリー下のファイル「 lightbox_plus.php 」の、JavaScript変数「 OVERIMGURL 」を変更します。初期値は以下の通りです。どこの画像でも埋め込み可能ですよ。楽しんでください。
if($photo['is_newphoto']) $lightbox_plus="var OVERIMGURL='".XOOPS_URL."/modules/$basedirname/images/newred.gif';"; else if($photo['is_updatedphoto']) $lightbox_plus="var OVERIMGURL='".XOOPS_URL."/modules/$basedirname/LightboxPlus/images/update2.png';"; else if($photo['is_popularphoto']) $lightbox_plus="var OVERIMGURL='".XOOPS_URL."/modules/$basedirname/images/pop.gif';";
Q: myalbumxそれぞれに異なるLightBoxを導入可能でしょうか?
- A はい、可能です。
- 以下は、「 photo.php 」に埋め込んだスクリプトです。参考にして下さい。PHP変数「 $basedirname=$mydirname; 」にすれば、個々の LightboxPlus を参照するようにはできますね。
/* BEGIN --- for Lightbox 2007/05/20 by Ujiki.oO */
// $basedirname = $mydirname;
$basedirname = "myalbum";
$file_ext = strtolower($photo['ext']);
$xoopsTpl->assign( 'file_ext' ,$file_ext ) ;
if($file_ext=='jpg'||$file_ext=='gif'||$file_ext=='png'){
if(file_exists(XOOPS_ROOT_PATH."/modules/$basedirname/LightboxPlus/lightbox_plus.php")){
include_once XOOPS_ROOT_PATH."/modules/$basedirname/LightboxPlus/lightbox_plus.php" ;
if(!empty($lightbox_plus))
$xoopsTpl->assign( 'xoops_js' ,"$lightbox_plus" ) ;
$xoopsTpl->assign( 'Lightbox' ,'on' ) ;
}
}
/* END --- for Lightbox 2007/05/20 by Ujiki.oO */
【 解説 】:- $basedirname
初期値は「myalbum」固定で、「LightboxPlus」を参照します。 - $file_ext
ファイルの拡張子を代入します。 - $xoopsTpl->assign( 'file_ext' ,$file_ext ) ;
テンプレート側で「 PDF 」な場合に、_blank していたりします。 - 後は、テンプレートの編集ですね。photo.php が参照するテンプレートは、「 templates 」下の「 myalbumx_photo.html 」ですね。注記)xには数字が当てはまりますよね。または、myalbum_photo.html
応用
他のサイト、手打ちによる画像などの利用を禁止させる方法:
※ 今回の配布ファイルには、「 uploads / photo8, photo9 / htaccess 」ファイルがあります。是非、参考にして下さい。
- > 配布ファイルのURLを自分のサイトに変更する。
配布品は「 http://hamster.byethost31.com/ 」からの接続時のみ全ての画像のみを閲覧可能な設定ですね。仮に、あなたのXOOPS2サイトが、「 http://www.abcd.co.jp/ 」なら、
SetEnvIf Referer "^http://www\.abcd\.co\.jp/" ref_ok
- と、変更しましょう。Lightbox Plus の機能とあいまって、著作権利保護の方向に少し前進できるのかも知れませんね。
全てのモジュールでLightboxを利用する方法 
※ 2007/06/18 「 XREAで完璧XOOPS その10 」でご案内中のインストーラーで新規インストールを行いますと、管理メニューが新設され、管理メニューとの対話だけで、全てのモジュールにおける「リンク先が画像」の場合にだけ、クライアント・プロセスである「 Lightbox Plus 」環境を自動的に構築します。
※ そこで、「 XOOPSの全てのモジュールでLightboxを利用する方法 」で、解説することと致しましょう。
※ PDFファイルなどを、open.window で表示させる機能も追加完了しております。
※ 順 路
| XREAで完璧XOOPS その9 |
| XREAサーバーで簡単にSSLを利用しますか。 これで安全に個人情報を扱える宣言を行いますか |
| 最上部に移動する | 「XOOPSの話題」へ戻す | 複数サーバーで処理速度を向上 |
カテゴリ:インターネット > XOOPSの完璧インストール
2007年09月04日(火) 20:39:42 Modified by mmj_aos
















