MODxでCMSの恩恵を賜りつつ、validを保ち、かつWEB標準化を目指そう
Welcome !! Now 2008.07.20 22:26 (JST)
[ スニペット ]
Maxigallery は、多機能な画像ギャラリーです。Webユーザに投稿・編集管理権限を持たせることも可能です。また、ログインユーザのみ閲覧可能なギャラリーも構築できます。
PHx をサポートしており、テンプレートも細かく指定できるので、多彩な表現が可能です。また画像の表示方法も何通りかあり、ウォーターマークを挿入することもできます。
親アルバムの下に子(サブ)アルバムを持たせるような構成も簡単に実現できます。
参照ページ:Maxigallery wiki/Maxigallery
サブアルバムを持つギャラリーの構築方法を示します
[!MaxiGallery? &display=`childgalleries`!]
[!MaxiGallery? &display=`embedded` &embedtype=`slimbox` &pics_per_row=`3` &max_thumb_size=`110`!]
親ドキュメント=親アルバム └子ドキュメント=子アルバム └子ドキュメント=子アルバム
リソースのインストール方法についてを参照してください
[[MaxiGallery]]
MaxiGallery でも、Ditto2.x や Wayfinder2.0 で採用されている config パラメータを使った簡潔なスニペットコールの記述が可能です。
<?php // Use the following syntax $param = 'value'; $pics_per_row = '3'; $display = 'childgalleries'; $order_by = 'random'; ?>
[!MaxiGallery? &config=`sample`!]MaxiGallery 全体に渡る設定に関するパラメータです。
画像の管理(投稿、編集、削除などの)を許可するWebユーザグループを指定します。カンマで区切って複数指定可能です。
画像の管理(投稿、編集、削除などの)を許可するWebユーザを指定します。カンマで区切って複数指定可能です。
自分自身がポストした画像の管理を許可するWeb ユーザグループを指定します。カンマで区切って複数指定可能です。
自分自身がポストした画像の管理を許可するWeb ユーザを指定します。カンマで区切って複数指定可能です。
デバッグに関する情報を表示するかどうかを指定します。デフォルト「しない(0)」。
MaxigalleryがJSライブラリ(MooTools, Prototype, Scriptaculous)を<head>~</head>に自動挿入することを無効にするかどうかを指定します。デフォルト「しない(0)=ライブラリを自動挿入します」。
これを有効にすれば、ドキュメント用のテンプレートで既にそれらのライブラリを指定しているとき、2重に読み込んでしまうことを避けることができます。
ユーザの環境でJavaScriptが有効なとき、右クリックメニューの「画像の保存」ができないようにするかどうかを指定します
デフォルト「しない(0)」。
アップロードの際、画像にランダムなファイルネイムを使用するかどうかを指定します。デフォルト「しない(0)= ローカルのファイル名をそのまま利用」
maxigallery 用のデータベーステーブル名(MODx テーブルプリフィクスは、自動的に追加されるでしょう)。デフォルト「maxigallery」
ギャラリに適用するCSSを指定します。以下の指定方法が可能です。
assets/css/gallery.css<style>.classname{}</style>デフォルト「assets/snippets/maxigallery/css/default.css」
JavaScript を挿入できます。以下の様式を指定できます。
/assets/js/gallery.jsMaxigalleryJs<scripttype="text/javascript">alert(hello);</script>後から画像のタイトルや説明などの変更をくわえても、画像をアップロードした時の日時を保持するかどうかを指定します。デフォルト「保持する(1)」
ギャラリにアップロードできる画像の最大数を指定します。「0」を指定すると無制限にアップロードできます。デフォルト「無制限(0)」
言語ファイルを指定します。デフォルト「en」。現在のところ日本語はないので、必要であれば自作します。lang_ja.phpとして作成し「maxigallery/lang」下に置きます。そしてスニペットコールで「&lang=`ja`」と指定します。
「slidebox」「lightboxv2」「slimbox」は、それぞれの「js」フォルダ下のJsと「image」フォルダ下の画像をそれぞれのファイル名の規則に従って作成すれば、「Next」などが日本語化できます(はずです)。
もし「ja」のつくファイルが見つからない場合、自動的に「en」を読みに行くようです。
ドキュメントをブラウジングモードで表示するか、マネージャモードで表示するかを指定します。デフォルト「マネージャモード(0)」。「1」を指定するとGalleryの管理者権限を持つアカウントでログインしても「Manager Pictures」ボタンが表示されません。
アイテム管理をしたいドキュメントのIDを指定します。他のドキュメントから、アイテムの管理ができます。「manager_target」と組み合わせて、ギャラリー用ドキュメントと管理用ドキュメント用分けたい場合に利用すると良いでしょう。
管理者としてログインしていない場合は、普通にアイテムを表示します。
カレントドキュメントのアイテム管理をするためのドキュメントIDを指定します。「&is_target=`1`」と併用します。
[!MaxiGallery? &display=`embedded` &embedtype=`slidebox` &manage_target=`286` &is_target=`1`!][!MaxiGallery? &manage_gallery=`229` &admin_webgroups=`Site
Admins` &limit=`2`!]アイテム(サムネイル)表示に関するパラメータです。
画像を取得したいドキュメント(アルバム)のIDを指定します。カンマで区切って複数指定可能です。デフォルト「カレントドキュメント」
[!MaxiGallery? &gal_query_ids=`228`!]「gal_query_ids」で指定したドキュメントのどの階層までアイテムを回収するかどうかを指定します。デフォルト「1」(「gal_query_ids」で指定したドキュメントが親ドキュメントなら直下の子ドキュメント層まで)。
直接の親アルバム以外のドキュメントから、サブギャラリのアイテムを表示します。マネージャ権限でログインしている場合は、「Manage pictures」ボタンも表示されます。利用したいサブアルバム(maxigallery call)コールを含むサブアルバムのドキュメントIDを指定します。
表示するアイテムの数の最大値を指定します。デフォルト「9999999」
表示するアイテムのオフセット数を指定します。デフォルト「0」。
並べ替えの基準になるフィールド名を指定します。以下を指定できます。
デフォルト「pos,date」。
サブアルバムで「randam」を指定すると、画像をラムダムに表示します。親アルバムで「ramdom」を指定すると、サブアルバムのサムネイルをランダムに交換します。
※「randam」ランダムを指定しているとマネージャで画像を削除した後エラーになる(かも)。
降順(DESC)か昇順(ASC)かを指定します。デフォルト「DESC」。
1ページに表示したいアイテム(サムネイル)の数を指定します。デフォルト「無制限(0)」。
親アルバムでは無効です。
1行に表示するアイテム(サムネイル)の数を指定します。デフォルト「4」。親アルバムでも有効です。
回収したいアイテムIDを指定します。カンマで区切って複数指定可能です。このパラメータを指定すると「manage pictures」ボタンを表示しません。
「display=`pictureview`」が指定されているとき、このパラメータで、表示を開始するアイテム(ID)を指定できます。
「display=`pictureview`」が指定されているとき、このパラメータで、表示を開始するアイテム(position)を指定できます。
親アルバム用に特に用意されたパラメータです。
リストアップするサブアルバムをdocidで指定します。カンマで区切って複数指定可能です。デフォルト「すべて(all)」
どの階層まで、リストアップするかを指定します。デフォルト「無制限(0)」。
何件リストアップするかを指定します。
サブアルバムのソートの基準となるフィールドを指定します。デフォルト「menuindex」。
サブアルバムの並び順を指定します。以下を指定できます。
デフォルト「ASC」
ギャラリーのタイプや、画像を表示するときのモードを指定するパラメータです。
ギャラリーのタイプまたは各画像の表示形式を指定します。以下を指定できます。
デフォルト「normal」
「display」パラメータで、「embedded」を指定したとき、このパラメータで画像の表示方法を指定します。以下を指定できます。
「slidebox」の場合、アルバムディレクトリに「gallery.xml」が生成される。他のモードの場合は、生成されず、仮に「galleyr.xml」が存在すると削除される。
また他のモードから「slidebox」に変更したときは、マネージャ画面で「Resynch Gallery」をクリックすると「gallery.xml」が作成される。この「gallery.xml」が存在しないと、「back」「Next」などのナビが表示されない模様。
ブラウジングするときのターゲットになるドキュメントをIDで指定します。デフォルト「カレントドキュメント」。ターゲットドキュメント(以下の例ならばID231)のmaxigallery コールには「&is_target=`1`」をくわえます(そうしないと画像表示できません)。
指定なし:ドメイン/gallery/withzenliner.html?pic=126
カレントドキュメント= 229 = withzenliner.html
「picture_target=`231`」:ドメイン/gallery/outdoor.html?gal_id=229&pic=126
カレントドキュメント= 229 / ID231 = outdoor.html
スムースギャラリー用に特に用意されたパラメータです。
カルーセル(画像上に表示されるサムネイルストリップ)の不透明度を指定します。「0(まったく見えない)」~「1.0(完全に不透明)」。デフォルト「0.7」
カルーセルを最小化したときの高さを「px」指定します。デフォルト「20」
カルーセルを最小化したときの不透明度を指定します。「0(まったく見えない)」~「1.0(完全に不透明)」。デフォルト「0.4」
ディゾルブにかかる時間をミリセコンドで指定します。デフォルト「500」
画像表示領域の高さを「px」で指定します。オーバーフローした部分はカットされます。デフォルト「max_pic_sizeで指定した値(高さ)」
画像表示領域の幅を「px」で指定します。オーバーフローした部分はカットされます。デフォルト「max_pic_sizeで指定した値(幅)」
ギャラーに対するユニークidをテキストで指定します。このパラメータを指定すると、1ページに複数のスムースギャラリーを置くことができます。デフォルト「Gallery id」
画像をプレローディングするかどうかを指定します。デフォルト「する(true)」
スライドショーモードにするかどうかを指定します。デフォルト「しない(false)」
スライドショーのディレイをミリセコンドで指定します。デフォルト「9000」
スライドショーで画像をクリックしたとき画像を表示するかどうかを指定します。デフォルト「する(true)」
※このパラメータを「false」に指定した場合、「galleryPictureTpl」からもリンクタグを取り去ってください。
「Back」「Next」矢印を表示するかどうかを指定します。デフォルト「する(true)」。
※「smoothgallery_showArrows=`false`」だけを指定すると、画像も表示されなくなる。「smoothgallery_showCarousel=`false`」と併用すればOK※
カルーセルを表示するかどうかを指定します。デフォルト「する(true)」。
[!MaxiGallery? &display=`embedded` &embedtype=`smoothgallery` &smoothgallery_showArrows=`false` &smoothgallery_showCarousel=`false`
&smoothgallery_timed=`true`!]インフォメーションペイン(タイトルや説明を表示する領域)を表示するかどうかを指定します。デフォルト「する(true)」
インフォメーションペインの不透明度を指定します。「0(まったく見えない)」~「1.0(完全に不透明)」。デフォルト「0.7」
カルーセルを表示するためのテキストを指定します。デフォルト「言語ファイルから読み込み(pictures)」
カルーセルの中のサムネイルの高さを「px」で指定します。デフォルト「75」。
既に作成済みのサムネイルサイズより小さい値を指定するとその分カットされる。
※既に作成済みのサムネイルより大きい値を指定すると表示はされるが、動作が妙※
カルーセルの中のサムネイルの幅を「px」で指定します。デフォルト「100」。
既に作成済みのサムネイルサイズより小さい値を指定するとその分カットされる。大きい値を指定するとその分余白ができる
カルーセルの中のサムネイル同士のスペースを「px」で指定します。デフォルト「10」
画像をアップロードする際に作成するサムネイル用のパラメータです。
サムネイルのクォリティをパーセントで指定します。デフォルト「70」。
画像の最大サイズをピクセルで指定します。アップロードした画像のサイズがここで指定したサイズを超える場合は、この値にリサイズされます。「&max_thumb_size=120」または「&max_thumb_size=120x90(width x height)」のように指定します。デフォルト「130」。
イメージマスクを適用するかどうかを指定します。デフォルト「しない「0」
イメージマスクとして適用したい画像へのパスを指定します。デフォルト「assets/snippets/maxigallery/imagemask
/demomask-frame1.png」。
マスク部分の背景色をRGGヘキサで指定します。この色はページの背景色と同じ色にすべきでしょう。デフォルト「FFFFFF」。
イメージマスクの位置を指定します。以下が指定できます。
「resize」は、イメージマスクを画像のサイズに合わせます。デフォルト「resize」。
シャドウを適用するかどうかを指定します。デフォルト「しない(0)」。
シャドウの背景色をRGBヘキサで指定します。この色は、ページの背景色と同じにすべきでしょう。デフォルト「FFFFFF」。
シャドウ用の画像へのパスを指定します。デフォルト「assets/snippets/maxigallery/dropshadow/」。
ウォーターマークを適用するかどうかを指定します。デフォルト「しない(0)」
ウォーターマークのフォントサイズを指定します。以下を指定できます。
デフォルト「1」。
ウォーターマークの挿入位置(水平方向)を指定します。以下を指定できます。
デフォルト「right」
ウォーターマークの挿入位置(垂直方向)を指定します。以下を指定できます。
デフォルト「bottom」
ウォーターマークとして利用する画像のパスを指定します。アルファチャンネルつきのPNG画像を利用できます。デフォルト「assets/snippets/maxigallery/watermark/watermark.png」
ウォーターマークとして適用したいテキストを指定します。デフォルト「Copyright <YEAR>」
ウォーターマークとして適用したいテキストのカラーをRGBヘキサで指定します。デフォルト「FFFFFF」
ウォーターマークテキストの水平方向のマージンを「px」で指定します。デフォルト「2」
ウォーターマークテキストの垂直方向のマージンを「px」で指定します。デフォルト「2」
ウォーターマークのタイプを指定します。以下を指定できます。
デフォルト「text」
画像をアップロードする際に作成するノーマル画像用のパラメータです。
ノーマルサイズの画像のクォリティをパーセントで指定します。デフォルト「70」。
画像の最大サイズをピクセルで指定します。アップロードした画像のサイズがここで指定したサイズを超える場合は、この値にリサイズされます。「0」を指定するとオリジナルのサイズままアップロードします。「&max_pic_size=450」または「&max_pic_size=400x300(width x height)」のように指定します。デフォルト「450」。
イメージマスクを適用するかどうかを指定します。デフォルト「しない「0」
イメージマスクとして適用したい画像へのパスを指定します。デフォルト「assets/snippets/maxigallery/imagemask/demomask-frame2.png」。
マスク部分の背景色をRGGヘキサで指定します。この色はページの背景色と同じ色にすべきでしょう。デフォルト「FFFFFF」。
イメージマスクの位置を指定します。以下が指定できます。
「resize」は、イメージマスクを画像のサイズに合わせます。デフォルト「resize」。
シャドウを適用するかどうかを指定します。デフォルト「しない(0)」。
シャドウの背景色をRGBヘキサで指定します。この色は、ページの背景色と同じにすべきでしょう。デフォルト「FFFFFF」。
シャドウ用の画像へのパスを指定します。デフォルト「assets/snippets/maxigallery/dropshadow/」。
ウォーターマークを適用するかどうかを指定します。デフォルト「しない(0)」
ウォーターマークのフォントサイズを指定します。以下を指定できます。
デフォルト「3」。
ウォーターマークとして適用したいテキストを指定します。デフォルト「Copyright <YEAR> <SITENAME>」
ウォーターマークとして適用したいテキストのカラーをRGBヘキサで指定します。デフォルト「FFFFFF」
ウォーターマークテキストの水平方向のマージンを「px」で指定します。デフォルト「10」
ウォーターマークテキストの垂直方向のマージンを「px」で指定します。デフォルト「10」
ウォーターマークのタイプを指定します。以下を指定できます。
デフォルト「text」
ウォーターマークの挿入位置(水平方向)を指定します。以下を指定できます。
デフォルト「right」
ウォーターマークの挿入位置(垂直方向)を指定します。以下を指定できます。
デフォルト「bottom」
ウォーターマークとして利用する画像のパスを指定します。アルファチャンネルつきのPNG画像を利用できます。デフォルト「assets/snippets/maxigallery/watermark/watermark.png」
画像をアップロードする際に作成するビッグサイズ画像用のパラメータです。
大きいサイズ、またはオリジナルサイズの画像を保存するかどうかを指定します。デフォルト「しない(0)」。ファイル名に「beg_」がつきます。
ただし「1」を指定してもオリジナル画像が「max_pic_size」で指定サイズを超えない場合、大きい画像としては特に保存されないません。
従って、「1」を指定した場合、「display=`normal`」で、ノーマルサイズの画像をクリックすると大きなサイズ(オリジナルサイズ)の画像を表示する仕様ですが、上記の場合は、大きいサイズの画像がないため、Not found になります。と思ったんだけど、マネージャ画面で「Resynch Gallery」をクリックすると同期するみたい?
「keep_bigimg」の指定を解除した後、「Resynch Gallery」をクリックすると大きいイメージの画像は削除される。
大きい画像のクォリティをパーセントで指定します。デフォルト「100」。
画像の最大サイズをピクセルで指定します。アップロードした画像のサイズがここで指定したサイズを超える場合は、この値にリサイズされます。「0」を指定するとオリジナルのサイズを保持します。「&max_big_size=1240」または「&max_big_size=800x600(width x height)」のように指定します。デフォルト「1024」。
画像の表示方法を指定します。以下を指定できます。
デフォルト「external」です
マスク部分の背景色をRGGヘキサで指定します。この色はページの背景色と同じ色にすべきでしょう。デフォルト「FFFFFF」。
イメージマスクとして適用したい画像へのパスを指定します。デフォルト「assets/snippets/maxigallery/imagemask/demomask-frame2.png」。
イメージマスクの位置を指定します。以下が指定できます。
「resize」は、イメージマスクを画像のサイズに合わせます。デフォルト「resize」。
シャドウの背景色をRGBヘキサで指定します。この色は、ページの背景色と同じにすべきでしょう。デフォルト「FFFFFF」。
シャドウ用の画像へのパスを指定します。デフォルト「assets/snippets/maxigallery/dropshadow/」。
シャドウを適用するかどうかを指定します。デフォルト「しない(0)」。
イメージマスクを使用するかどうかを指定します。デフォルト「しない(0)」。
ウォーターマークを適用するかどうかを指定します。デフォルト「しない(0)」。
ウォーターマークのフォントサイズを指定します。以下が指定できます。
デフォルト「5」。
ウォーターマークの(水平)配置を指定します。以下を指定できます。
ウォーターマーク用の画像へのパスを指定します。画像は透過PNGを使用できます。
ウォーターマーク用のテキストを指定します。デフォルト「Copyright <YEAR> <SITENAME>」
ウォーターマーク用のテキストカラーをRGBヘキサで指定します。デフォルト「FFFFFF」。
テキストウォーターマークの左右マージンを「ピクセル」で指定します。デフォルト「15」。
テキストウォーターマークの上下マージンを「ピクセル」で指定します。デフォルト「15」。
ウォーターマークのタイプを指定します。以下を指定できます。
デフォルト「text」。
ウォーターマークの(垂直)配置を指定します。以下を指定できます。
デフォルト「bottom」。
ftp用に用意されたパラメータです
ベースディレクトリを指定します。
例えば、「/home/ユーザ名/www/MODx/」にMODxをインストールしている場合、以下のように指定します。
&ftp_base_dir=`/www/MODx/`
ユーザー名を指定します。
パスワードを指定します。
ポート番号を指定します。デフォルト「21」。
ホスト名(アドレス)を指定します。
サーバー側がサポートしていれば、fileシステム構築の際、maxigallery がPHP FTP コマンドを利用するかどうかを指定します。デフォルト「利用しない(0)」。
利用の際は、サーバー側でサポートしているかどうか確認してください。
テンプレート用に用意されたパラメータです。
テンプレートはデフォルトでそれぞれ「assets/snippets/maxigallery/templates/」から読み込まれます。
テンプレートの指定方法には以下があります。
テンプレートで利用可能なプレイスホルダは後述します。
ギャラリーの一番外側に来るテンプレートを指定します。デフォルト「galleryoutertpl.html」。
親アルバムでリストアップしているサブアルバムアイテム(サムネイル)ブロック用テンプレートを指定します。デフォルト「childgallerytpl.html」。
各アルバムでの各アイテム(サムネイル)ブロック用のテンプレートを指定します。デフォルト「gallerypicturetpl.html」。
各画像を表示するときのテンプレートを指定します。デフォルト「picturetpl.html」
ページナンバーブロック用のテンプレートを指定します。デフォルト「pagenumbertpl.html」
マネージャ画面へ移動するためのボタン用のテンプレートを指定します。デフォルト「managebuttontpl.html」
マネージャ画面の一番外側に来るテンプレートを指定します。デフォルト「manageoutertpl.html」
マネージャ画面での各アイテムブロック用テンプレートを指定します。デフォルト「managepicturetpl.html」
マネージャ画面でのアップロードブロック用テンプレートを指定します。デフォルト「manageuploadtpl.html」
┌galleryOuterTpl start
│─ ( manageButtonTpl ) … マネージャ権限でアクセスした場合に表示
│─ childgalleryTpl
└galleryOuterTpl end
┌galleryOuterTplstart
│─ ( manageButtonTpl ) … マネージャ権限でアクセスした場合に表示
│─ ( pageNumberTpl ) …ページナビゲーションが有効な場合に表示
│─ galleryPictureTpl → pictureTpl
└galleryOuterTpl end
┌galleryOuterTpl start
│─ managePictureTpl … 数分繰り返し
│─ manageUploadTpl … 数分繰り返し
└galleryOuterTpl end
「pics_per_row」パラメータを使うときに行を明確に区切るために利用するテンプレート。デフォルト「clearertpl.html」
ポップアップソート(ポップアップしたウィンドウ内でサムネイルをドラッグして並べ替えるられる機能)時に利用するテンプレート。デフォルト「draggabletpl.html」
wiki を参考にしてします。
MaxiGallery で構築したギャラリーはこちらです(今作ってます…)。
maxigalleryが読み込む、default.cssのナニカと、このサイトで定義しているcss(prot_x.cssまたはcube-black_x.css)の相性が、IE的に良くないらしく、「manager pictures」ボタンが表示されている状態だと?、画像サムネイルが表示されない。FFでは問題なし。また、IEでも、「manager pictures」ボタンが表示されていない状態(ブラウジング状態)なら表示の問題なし(たぶん)。