カスタムフィールドによるアップロード画像をサムネイルで表示するプラグイン
Movable Type 4.1 で追加されたカスタムフィールドで、アップロード画像をサムネイル表示するプラグインを紹介します。
2008.09.17 Movable Type 4.2 対応のバージョンを公開しました。
2008.01.22 カスタムフィールドによるアップロード画像をサムネイルで表示するプラグイン 0.02を公開しました。
このプラグインを作成した理由は、カスタムフィールドの種類で「画像」を選択すると、画像をアップロードできるようになりますが、アップロード後の表示が「表示」というリンクのみで、どのような画像をアップロードしたか分かりません(下)。
そこで、アップロード後の画像をサムネイルにして表示できるように改良してみました。このプラグインを利用すればアップロードした画像(GIF/JPG/PNG)を JavaScript でサムネイル表示できます(下)。
仕組みは「表示」というテキストリンクを、JavaScript で img 要素に置き換えているだけです(が、かなりてこずりました...)。画像幅が 200px 以上であれば画像をサムネイル表示します。
動作は、ブログ記事にひとつだけのカスタムフィールド(画像)を作り、画像選択時と、保存時に表示されることを確認しています。あまりデバグできていませんので、不具合ありましたらご連絡ください。
1.プラグインのダウンロード
下記のリンクをクリックしてプラグインをダウンロードします。
プラグイン開発やサポート等にご支援・ご賛同くださる方からの寄付をお待ち申し上げます。
上記の「寄付」のリンクをクリックすると Paypal によるお支払いページにジャンプします。
2.プラグインのアップロード
ダウンロードした VisibleCustomFieldImage.zip を解凍して、中にある VisibleCustomFieldImage.pl を plugins ディレクトリにアップロードします。「VisibleCustomFieldImage.pl」が表示されればOKです。
3.使い方
カスタムフィールドによる画像選択方法は変更ありませんが、一応手順を記しておきます。
カスタムフィールドの「imageを選択」をクリック。
画像を選択、または新規画像をアップロードして「次へ」をクリック。
「完了」をクリック。
これでアップロードされた画像がサムネイル表示されます。画像は元画像へのリンクを設定してますので、クリックすると元画像を表示します。
「表示」というリンクの時もそうですが、ブログ記事等を保存前にリンクをクリックして元画像を表示させた後、前の画面に戻ると、アップロード履歴が消えてしまいます。したがって HighSlide JS 等でサムネイルを拡大させる方がいいかもしれません。
4.サムネイル画像のサイズ
サムネイル画像のデフォルトサイズは幅200pxにしています。ソースコードが分かる人は、下記の行を変更すればデフォルトサイズを変更できます。
var def_width = 200;
サムネイル画像のデフォルトサイズ指定等は別途機能追加したいと思います。
5.ライセンス
MTOSにはカスタムフィールドはありませんが、先のことを考えてデュアルライセンスにしておきます。
5.1 MT4.1個人ライセンス/MT4.1商用ライセンスと組み合わせる場合
- 無料で利用できます。
- 改変・再配布は自由ですが、改変して再配布する場合、原作者のクレジットを必ず残してください。
5.2 MTOSと組み合わせる場合
- 無料で利用できます。
- GPLv2に従います。
2008.02.17
0.03 にバージョンアップしました。
- MovableTypeで削除したコンテンツデータや記事を復元できる「Trashプラグイン」
- Movable Typeのデータ更新を抑止する「DataUpdateSuppressorプラグイン」
- Movable Typeのウェブサイト管理者にブログ作成権限を与える「CreateBlogPermissionプラグイン」
- Movable Typeでダッシュボードのサイト情報期間を変更できる「SiteStatsTermChangerプラグイン」
- Movable Typeの管理画面のtitle要素を変更する「TitleChangerプラグイン」
- Movable Type管理画面のセッションタイムアウトを延長する「SessionTimeoutExtenderプラグイン」
- Movable Type管理画面で左右のメニューを非表示にする「MenuHiddenerプラグイン」
- Movable Typeのテンプレート編集画面でシンタックスハイライトを無効にする「InvalidateCodeMirrorプラグイン」バージョンアップ(v0.12)
- Movable Typeでログイン後の管理画面を変更する「ScreenChangerプラグイン」
- Movable Typeのテーマにウェブページを利用できる「PageImExporterプラグイン」バージョンアップ(カスタムフィールド対応)
- Movable Typeのテンプレート編集画面でシンタックスハイライトを無効にする「InvalidateCodeMirrorプラグイン」バージョンアップ(v0.11)
- Movable Typeの記事一覧画面にアイテムを表示する「EntryAssetListingプラグイン」バージョンアップ
- Movable Typeのテーマにブログ記事を利用できる「EntryImExporterプラグイン」バージョンアップ(カスタムフィールド対応)
- Movable Typeのテーマにブログ記事を利用できる「EntryImExporterプラグイン」バージョンアップ
- Movable Typeでアイテムアップロード時にリサイズ可能な「UploadImageResizerプラグイン」バージョンアップ
はじめまして。
カスタムフィールドを入れたはいいものの、
純粋に画像を表示させるのに悩んでいました。
すばらしいプラグインをありがとうございます。
ぜひ活用させていただければと思います。
ただ、わたしの環境がCoreserverなのですが、
プラグインを入れると、script errorが出てしまいます。
これはサーバーの仕様によるものなのでしょうか。
お時間ありましたら、ご教授いただけますと幸いです。
よろしくお願いいたします。
>kageyamaさん
こんばんは。
Coreserverでのscript errorはどの画面で発生していますでしょうか。
もう少し詳細な情報を頂けると幸いです。
それではよろしくお願い致します。
すみません。説明不足でした・・・。
mt管理画面へアクセスすると、script errorが出て、
すべて正常に表示されなくなってしまいます。
FTPでプラグインをアップした瞬間から
このような現象になります。
以上、よろしくお願いいたします。
>kageyamaさん
こんばんは。
ご指摘ありがとうございました。
またご迷惑おかけして申し訳ありません。
プラグインを0.03にバージョンアップしましたのでお試しください。
それではよろしくお願い致します。
大変遅くなりました。
0.03バージョン使わせていただきました!
素晴らしいプラグインをありがとうございます!
>kageyamaさん
こんにちは。
ご連絡ありがとうございました。
ではでは!