2007-06-15

myGallery スマートサムネイル

●概要

このパッチは、Wordpress用ギャラリープラグイン myGallery のサムネイル生成処理を置き換え、よりスマートなサムネイル生成を行うためのパッチです。

●何が変わるのか

myGalleryでは、サムネイル生成に幾つかのパターンを指定できます。

Thumbsetting

中でも、赤丸で囲んだオプションを指定し、四角で切り取ったようなパターンのサムネイルを生成するとき、画像によってはちょっと困ったサムネイルになってしまいます。

例えば、こんな元画像があったとします。(クリックで拡大)

Original_1

この元画像を四角で切り取ったサムネイルにすると、このようになります。

Mythumb_1 これでは、何がなんだかさっぱり分かりません。

画像を開くまでお楽しみと言う意味ではこれで良いのかも知れませんが、一覧したいときなど、これでは意味を成しません。


そこで、このパッチによってよりスマートに四角で切り取るように処理を変更します。

Smartthumb パッチを適用すると、こんな感じのサムネイルになります。

これであれば、画像の全体的なイメージを残したまま、矩形で切り取ったスマートなサムネイルとなります。


サムネイル生成の処理内容は次の通りです。

  • 画像の短辺が指定されたサイズになるように画像を縮小する。
  • 縮小した画像の中央部分を指定したサイズの四角形で切り取る。

簡単な処理ですがより見やすいサムネイルが生成されます。


  • myGallery スマートサムネイル
  • myGallery スマートサムネイルインストール
  • | | コメント (0) | トラックバック (0)

    myGallery スマートサムネイルインストール

    ●インストール

    myGallery 1.4b7 で動作確認しています。
    下記リンクより、拡張用スクリプトをダウンロードしてください。

    ダウンロード imageresample.php-0.1.txt (5.7K)

    このPHPファイルに処理用の関数が含まれています。
    汎用的に使えるので自作スクリプトに組み込んだり自由に改造などしてもらってOKです。

    これを、myGalleryプラグインをインストールしたディレクトリ内 wp-content/plugin/mygallery/ へ ファイル名 imageresample.php としてコピーします。

    次に、wp-content/plugin/mygallery/mygallery.php 内に次のコード(赤文字部分)を追加します。


    ver 1.4b7の場合
    wp-content/plugin/mygallery/mygallery.php : line 28

    @include_once(myGalleryPath. 'myfunctions/mygalleryfunctions.php');

    @include_once(myGalleryPath. 'imageresample.php');


    さらに、wp-content/plugin/mygallery/myfunctions/mygalleryfunctions.php 内に次のコードを追加・不要部分をコメントアウト(赤文字部分)します。


    ver 1.4b7の場合
    wp-content/plugin/mygallery/myfunctions/mygalleryfunctions.php : line 478

    else if ($mg_options[scalethumb]==2){
     
        $new_img = generate_resampleimage($myimg, $my_extension, 'squarecut', $tmb_width);
     
    //  $tmb_x=(int) (($myimg_width/2)-($tmb_width/2));
    //  $tmb_y=(int) (($myimg_height/2)-($tmb_width/2));
    // 
    //  if ($my_extension=='gif') {
    //   $new_img = imagecreate($tmb_width,$tmb_width);
    //  }
    //  else {
    //   $new_img = imagecreatetruecolor($tmb_width,$tmb_width);
    //  }
    // 
    //  imagecopy ( $new_img,$myimg,0,0,$tmb_x,$tmb_y,$tmb_width,$tmb_width);
     
    }
    else {


    以上で完了です。

    パッチを当てた後、管理画面でサムネイル設定を行ってください。
    その後、ギャラリー管理にて、各ギャラリーのサムネイルを新しく作り直せばサムネイルが作成されます。

    ●開発者向け

    imageresample.php 内の処理関数は画像のリサンプリングに関して他にも幾つかの処理モードを持っており、汎用的な画像の拡大縮小処理に利用可能です。
    各処理モードについてはコード内のコメントを参考にしてください。
    また、各処理モードの違いについて、解説図を示しておきます。

    Imageresample


  • myGallery スマートサムネイル
  • myGallery スマートサムネイルインストール
  • |

    2007-04-24

    myGallery 拡張タグ関数

    ●概要

    このパッチは、Wordpress用ギャラリープラグイン myGallery で使用される、ギャラリー構築用のページタグに簡易的なタグ関数を拡張するパッチです。
    以前、「拡張パッチmygalsw」として公開していたものを改良したものですが、使い方は全く異なります。

    ●インストール

    myGallery ver 1.2.1 および 1.4b6 で動作確認しています。
    下記リンクより、拡張用スクリプトをダウンロードしてください。

    ダウンロード mygaltagext.php-0.2.txt (2.4K)

    これを、myGalleryプラグインをインストールしたディレクトリ内 wp-content/plugin/mygallery/ へ ファイル名 mygaltagext.php としてコピーします。

    次に、wp-content/plugin/mygallery/mygallery.php 内に次のコード(赤文字部分)を追加します。


    ver 1.2.1の場合
    wp-content/plugin/mygallery/mygallery.php : line 41

    @include_once(myGalleryPath. 'myfunctions/mygalleryfunctions.php');

    // include tag function (add by norida)
    @include_once(myGalleryPath. 'mygaltagext.php');

    wp-content/plugin/mygallery/mygallery.php : line 75

        $mypicture_id=$_GET[picture_id];

        // tag function (add by norida)
        $content = mgext_tagfunc($content);


    ver 1.4b6の場合
    wp-content/plugin/mygallery/mygallery.php : line 28

    @include_once(myGalleryPath. 'myfunctions/mygalleryfunctions.php');

    // include tag function (add by norida)
    @include_once(myGalleryPath. 'mygaltagext.php');

    wp-content/plugin/mygallery/mygallery.php : line 66

        $myurl=get_bloginfo('wpurl').'/'.$mg_options[gallerybasepath];
       
        // tag function (add by norida)
        $content = mgext_tagfunc($content);


    以上でインストールは完了です。

    2007/05/08 追記
    myGallery ver 1.4b4 以前のバージョンにはセキュリティに問題があります。
    そのため記事内容を一部変更しました。
    ver 1.4b5 以降を使用する事をお薦めします。


    myGallery 拡張タグ関数
    myGallery 拡張タグ関数リファレンス
    myGallery 拡張タグ関数その他

    | | コメント (0) | トラックバック (0)

    myGallery 拡張タグ関数リファレンス

    ●タグ関数

    現在は次の2つの関数が実装されています。


    #fgalsw

    指定した月・時間・曜日毎に異なるギャラリーIDを返します。
    返されたギャラリーIDは [mygal=] タグや [myginpage=]タグで使用する事ができます。

    文法

    #fgalsw($defgal,$swkind,<$num1=$gal1,$num2=$gal2...>)

    • $defgal
      デフォルトのギャラリー名。条件に合致しない時に適用されるギャラリーを指定します。
    • $swkind
      切り替え条件指定。ギャラリーを切り替える条件を指定します。指定できる条件は下記の通りです。
      • month = 月毎に切り替えます。
      • hour = 時間毎に切り替えます。
      • wday = 曜日毎に切り替えます
    • <$num1=$gal1,$num2=$gal2...>
      切り替えるギャラリーの条件指定をカンマセパレータで列記していきます。
      • $num1 = 月・時間・曜日を指定する番号です。
      • $gal1 = $num1に指定した月・時間・曜日の場合、表示するギャラリー名です。

    [mygal=#fgalsw(gallery2007,month,1=200701,2=200702,3=200703)]

    月毎にギャラリーが切り替わります。
    1月はギャラリー名 200701 のギャラリー、
    2月はギャラリー名 200702 のギャラリー、
    3月はギャラリー名 200703 のギャラリーが表示されます。
    それ以外の月はギャラリー名 gallery2007 のギャラリーが表示されます。

    [mygal=#fgalsw(happyday,hour,7=goodmorning,12=havelunch,23=midnight)]

    時間毎にギャラリーが切り替わります。
    7時台はギャラリー名 goodmorning のギャラリー、
    12時台はギャラリー名 havelunch のギャラリー、
    23時台はギャラリー名 midnight のギャラリーが表示されます。
    それ以外の時間帯はギャラリー名 happyday のギャラリーが表示されます。

    [mygal=$fgalsw(weekendsurprise,wday,1=sleepymon,6=satfever)]

    曜日毎にギャラリーが切り替わります。
    月曜日はギャラリー名 sleepymon のギャラリー、
    土曜日はギャラリー名 satfever のギャラリー、
    それ以外の曜日はギャラリー名 weekendsurprise のギャラリーが表示されます。

    曜日は、 0(日曜日) ~ 6(土曜日) の順になります。



    #fgalrand

    ランダムに選ばれたギャラリーIDを返します。
    返されたギャラリーIDは [mygal=] タグや [myginpage=]タグで使用する事ができます。

    [mygal=#fgalrand(gallery2004,gallery2005,gallery2006,gallery2007)]

    gallery2004, gallery2005, gallery2006, gallery2007 のいずれかのギャラリーをランダムに表示します。

    [myginpage=#fgalrand(spring,summer,autumn,winter)]

    四季のギャラリーをランダムに myginpage で表示します。



    myGallery 拡張タグ関数
    myGallery 拡張タグ関数リファレンス
    myGallery 拡張タグ関数その他

    |

    myGallery 拡張タグ関数その他

    ●その他

    改変・複製・再配布、すべてにおいて自由に取り扱ってください。

    ●処理内容

    このパッチの仕組みは単純明快です。
    myGallery がページ出力時にタグを置き換える前にタグ関数の置換処理を実行しているだけで、その後の処理は myGalleryオリジナルの処理が実行されます。

    タグ関数の置換処理も、単純に与えられた条件(日時や乱数)によってギャラリーIDを選択し置換しているだけです。

    もし、タグ関数を追加したり改良する場合は、mygaltagext.php 内に処理実体がありますので参考にしてください。



    myGallery 拡張タグ関数
    myGallery 拡張タグ関数リファレンス
    myGallery 拡張タグ関数その他

    |

    2007-04-18

    myGallery スクリーンショット

    ●ギャラリー概要一覧表示
    Gallerylist_1

    ●フルサイズ表示(サムネイル付き)
    Photothumbimg

    ●フルサイズ表示(画像のみ)
    Photoimg

    ●サムネイル一覧
    Thumbnaillist

    ●ランダム表示
    Randomimg

    ●全体的なイメージ
    Galleryimg


    myGallery プラグインの紹介
    myGallery ギャラリー作成
    myGallery ギャラリー管理
    myGallery ギャラリーページ
    myGallery ギャラリー概要一覧ページ
    myGallery スクリーンショット

    myGallery 日本語ファイル

    |

    myGallery ギャラリー概要一覧ページ

    ●ギャラリー概要一覧ページの作り方

    ギャラリーページの作り方同様に一覧を表示するためのページを作成します。
    編集等は通常通りに行ってください。
    次に、ギャラリー概要一覧を表示したい位置に、myGallery の拡張タグを埋め込みます。下記のタグを記述してください。

    [mygallistgal]

    ページを作成すればギャラリー概要一覧用のページは完成です。

    Gallerylist

    ●もっと詳しい事

    ここでは myGalleryプラグインの基本的な操作のみを紹介しましたが、もっと沢山の機能を搭載しています。
    詳しい機能については、オフィシャルサイトのドキュメントやプラグインのオプションを色々と研究して見てください。
    また、CSSによるデザインについてもオフィシャルドキュメントに詳しく書いてあります。(ドイツ語ですが・・(^_^;)


    myGallery プラグインの紹介
    myGallery ギャラリー作成
    myGallery ギャラリー管理
    myGallery ギャラリーページ
    myGallery ギャラリー概要一覧ページ
    myGallery スクリーンショット

    myGallery 日本語ファイル

    |

    myGallery ギャラリーページ

    ●ギャラリーページの作り方

    まず、ギャラリーを表示するためのページを作成します。
    Wordpress管理メニューより「投稿」-「ページ作成」を選択します。
    ページを通常の編集と同様に作成してください。画像の貼り付けなども自由です。
    次に、ギャラリー画像を表示したい位置に、myGallery の拡張タグを埋め込みます。
    例えば、sample2007 と言うギャラリーID名の場合、下記のタグをページ内に記述します。

    [mygal=sample2007]

    Createpage

    ページを作成したら、「管理」-「ページ」メニューへ進み、ページ管理でページ一覧を表示します。
    このとき、先ほど作成したページのページIDをメモしておきます。

    Pageid

    最後にギャラリー管理を設定します。「myGallery」-「ギャラリー管理」を選択し、目的のギャラリー設定を表示します。
    ギャラリー設定の設定項目内の、「ギャラリーpage_id」に先ほどメモしたページIDを入力してから、「ギャラリーと画像データを更新する」ボタンをクリックし更新を反映します。

    Setpageid

    これで、ギャラリーとギャラリーページの関連付けが完了しました。
    この作業を行わないと、ギャラリー概要一覧表示からのリンクが正しく行われません。

    以上の作業でギャラリーページが完成です。


    myGallery プラグインの紹介
    myGallery ギャラリー作成
    myGallery ギャラリー管理
    myGallery ギャラリーページ
    myGallery ギャラリー概要一覧ページ
    myGallery スクリーンショット

    myGallery 日本語ファイル

    |

    myGallery ギャラリー管理

    ●ギャラリー管理

    Wordpress管理ツールのメニューから「myGallery」を選択し、サブメニューの「ギャラリー管理」を選択します。

    作業するギャラリーを選択ボックスから選び、「選択したギャラリーを表示する」チェックをオンにし、「OK」ボタンをクリックします。

    Galleryman_1

    ギャラリー設定とギャラリー画像の一覧が表示されます。

    Mygallery

    ■ギャラリー設定

    このギャラリー全体の設定を行います。

    • ギャラリーpage_id
      後述します。
    • プレビュー画像
      ギャラリー概要一覧で表示されるギャラリー内の画像を指定します。
    • ギャラリーの説明
      ギャラリーの説明を記入してください。
    • ギャラリー名
      ギャラリーの名称を入力してください。
    • ギャラリーを概要から除外する。
      このギャラリーをギャラリー概要一覧に表示しないようにします。

    上記の設定内容を編集した場合は、必ず「ギャラリーと画像データを更新する」ボタンをクリックし更新を反映してください。

    ■ギャラリー画像

    各画像ファイルの設定を行います。

    • 説明
      画像の説明文を記入してください。
    • Alt & Title テキスト
      画像リンクの alt属性に出力されるテキストを入力してください。
    • 除外
      ギャラリー内容の表示時やサムネイル表示時にこの画像を表示しない場合はチェックします。

    上記の設定内容を編集した場合は、必ず「ギャラリーと画像データを更新する」ボタンをクリックし更新を反映してください。


    myGallery プラグインの紹介
    myGallery ギャラリー作成
    myGallery ギャラリー管理
    myGallery ギャラリーページ
    myGallery ギャラリー概要一覧ページ
    myGallery スクリーンショット

    myGallery 日本語ファイル

    |

    myGallery ギャラリー作成

    ●ギャラリーを作成する

    Wordpress管理ツールのメニューから「myGallery」を選択し、サブメニューの「myGallery」を選択します。

    表示された作業メニューの一番下の項目(下図参照)「作成する」チェックをオンにし、ボックスにギャラリーID名を入力します。
    Creategal

    「実行する」ボタンをクリックするとギャラリーが作成できます。

    ●ギャラリーへ画像を追加する

    Wordpress管理ツールのメニューから「myGallery」を選択し、サブメニューの「myGallery」を選択します。

    表示された作業メニューの下から2つ目の、「ギャラリーへアップロードする」チェックをオンにし、アップロードするギャラリーを選択ボックスから選びます。
    「参照」ボタンをクリックし、アップロードする画像ファイルを選びます。
    Uploadphoto_1

    このとき、単体のファイルのほかに、画像ファイルをアーカイブした zip ファイルをアップロードする事ができます。zip ファイルはサーバー上で自動的に解凍され、画像ファイルが抽出されます。


    myGallery プラグインの紹介
    myGallery ギャラリー作成
    myGallery ギャラリー管理
    myGallery ギャラリーページ
    myGallery ギャラリー概要一覧ページ
    myGallery スクリーンショット

    myGallery 日本語ファイル

    |