ftpクライアントを立ち上げて、写真をアップロードするだけでフォトギャラリーを作れるCGIスクリプトです。
wordpressで写真を表示するためのプラグインもあります。
ダウンロード
EzPhoto
改版履歴
バージョン |
日付 |
修正内容 |
1.00 |
20080526 |
公開 |
サンプルとスクリーンショット
1枚/1ページの例
5枚/1ページの例
Livedoor readerでのRSS表示例
サンプル1
pokosho photo
機能
- 画像をアップロードするだけでギャラリーができます。
- テンプレートを編集することである程度自由にデザインができます。
- RSS(2.0)を配信します。配信内容もテンプレートで編集できます。
- ページングができます。
- 設定を変更することで、1ページに表示する画像の枚数などを変更できます。
- 毎回、新しい画像のチェックを行わず、サーバに優しい(はず)です。
- URLパラメータmode=updateを指定することで即座に更新チェックを掛ける事もできます。
必要な環境
perl5.8以上
文字コードUTF-8を編集できるエディタ(sakura editorなど)
ライセンス
以下のCreative Commons Licenseです(商用利用、改変可(ただし、改変後もここと同じライセンスとします))。
Powered by EzPhotoを消さないで貰えると嬉しいです。
改変内容をお知らせして貰えると嬉しいです。
設置方法
強調表示してある項目が修正が必要なファイルです。
ファイル/ディレクトリ名 |
説明 |
パーミッション |
Ezphoto.conf |
主設定ファイルです。タイトル、更新チェック間隔、1ページ内の画像数、テンプレートの場所の指定などを設定できます。 |
644 |
index.cgi |
indexのcgiです。perlのパスをサーバに合わせて設定する必要があります。 |
755 |
EzPhoto.pm |
メインモジュールです。 |
644 |
log4perl.conf |
log4perlの設定です。デバッグ用です。設定を変更すると不可が大きくなるので変更しないでください。 |
644 |
RequesterMapping.yml |
リクエストとモジュールの対応ファイルです。拡張用です。変更しないでください。 |
644 |
sample.htaccess |
.htaccessファイルのサンプルです。index.cgiにdirectoryIndexを張ります。RSSファイルのファイルタイプを設定します。使用する際は、名前を.htaccessに変更する必要があります。 |
644 |
up |
画像をアップロードするディレクトリです(設定で変更可能)。 |
755 |
その他(ディレクトリ,pmファイル) |
プログラム本体です。 |
644 |
template |
テンプレートを置く場所です(設定で変更可能)。サンプルのテンプレートが入っています。 |
644 |
EzPhotoのディレクトリのパーミッションは755にしてください。
デザイン方法
下記テンプレートファイル内で、特別な文字列を使ってテンプレートを作成できます。
ファイル名 |
説明 |
page.tmpl |
ページ全体の構造を示す。<HTML_HEAD>及び<HTML_BODY>を指定する必要があります。 |
htmlhead.tmpl |
HTMLヘッダのテンプレートです。 |
head.tmpl |
ページ上部のテンプレートです。 |
gallery.tmpl |
画像1枚分のテンプレートです。複数枚表示する場合は繰り返し使われます。 |
pagerlink.tmpl |
ページャリンクです。<PAGER_START>~<PAGER_END>で囲まれた部分を繰り返し出力し、ページャを作成します。「~」部分では、<PAGER_LINK>を指定できます。 |
rss.tmpl |
RSS全体のテンプレートです。<RSS_FEED>及び<RSS_ITEM>を指定できます。 |
rss_feed.tmpl |
RSSのフィード情報のテンプレートです。 |
rss_item.tmpl |
RSSのitem1つ分のテンプレートです。 |
update_result.tmpl |
mode=updateを指定したときの結果表示用テンプレートです。 |
置換される文字列
サイト概要
文字列 |
説明 |
<PAGE_TITLE> |
ギャラリーのタイトル |
<PAGE_DESC> |
ギャラリーの概要 |
<PAGE> |
現在のページ番号 |
<LAST_UPDATE> |
最終更新日 |
<LAST_CHECK_DATE> |
最終更新チェック時刻 |
画像情報
文字列 |
説明 |
<IMAGE> |
画像ファイルへのパス |
<IMAGE_NAME> |
画像ファイル名 |
<IMAGE_DATE> |
画像アップロード日 |
<IMAGE_DATE_RSS> |
画像アップロード日(RFC822) |
<IMAGE_URL> |
画像のURL |
<IMAGE_NUM> |
全画像枚数 |
RSS関連
文字列 |
説明 |
<LAST_UPDATE_RSS> |
最終更新日(RFC822) |
<LAST_CHECK_DATE_RSS> |
最終更新チェック時刻(RFC822) |
<RSS_FILE> |
RSSファイルへのパス。オートディスカバリに使用。 |
設定読み出し
文字列 |
説明 |
<SITE_URL> |
サイトのURL(EzPhotoの設置場所のURL) |
<TMPL_DIR> |
テンプレートのディレクトリ |
ページャ
文字列 |
説明 |
<PAGER_PREV> |
前のページへのリンク先 |
<PAGER_NEXT> |
次のページへのリンク先 |
<PAGER_START> |
ページャの開始位置を示す。pager.tmplのみで使用可能。 |
<PAGER_END> |
ページャの終了位置を示す。pager.tmplのみで使用可能。 |
<PAGER_LINK> |
ページャのリンク先。<PAGER_START>~<PAGER_END>間で使用可能。 |
<PAGER_NUM> |
ページ番号。<PAGER_START>~<PAGER_END>間で使用可能。 |
その他
文字列 |
説明 |
<HTML_HEAD> |
HTMLヘッダテンプレートの内容に置換される。page.tmplのみで使用可能。 |
<HTML_BODY> |
HTMLのBODY部分。page.tmplのみで使用可能。 |
<RSS_FEED> |
RSSのchannel情報。内部用でユーザは使わない。rss.tmplのみで使用可能。 |
<RSS_ITEM> |
RSSのitem情報。内部用でユーザは使わない。rss.tmplのみで使用可能。 |
FAQ
よくありそうな質問。
- 動かないんだけどッ!
- perlのバージョン、ファイル/ディレクトリの権限を確認してください。mode=updateを指定して、更新をかけてみて下さい。
例:http://設置場所/index.cgi?mode=update
- ちょw バグwww ふざけww
- ごめんなさい。本ページにコメントを書いて貰えると助かります。余裕があったら直して送って下さい…。
- ページャのデザインは変更できないの…? あと現在のページにはリンク出さないで欲しい…。
- ページャの実装は意外と面倒でして…。要望が多ければ何とかします。
- xxxがxxxだったらサイコーなのに!
- このページにコメント付けて下さい。
- 文字化けるんだけどッ!
- 設定ファイル、テンプレートなど文字コードはUTF-8でお願いします。
- ftpじゃなくてwebからもアップロードしたいんだけど…
- 別途アップローダスクリプトを使ってアップロードするようにしてみてはいかがでしょうか?
- しょぼッ!www
- こちらをどうぞ。fotolog、flicker