メディアライブラリに格納されている画像を抽出して、アルバムページなどをつくるような WordPress のプラグイン、wp-kougabu の 1.00 beta1 をリリースしてみます。
wp-kougabu はショートコードをページにかいてギャラリーページをつくるのが主な働きでしたが、今回はそれをテンプレートタグでテーマ内の任意の位置にだせるようにしてみました。 また、指定できる属性も増やし「サイドバーにランダムに画像4枚」とか出して、リサイズ画像付きのランダムポストとかできるようになりました。
ここ、hiromasa.another の右上に出ているのがそうです。 🙂
とりあえず、まだあまり試験をしていないので、hiromasa.another だけで CVS HEAD からリリース (1.00 beta1) します。 以下からダウンロードできます。 なにか不具合あったらそっとおしえてください(笑
インストール方法は JSeries のほうをご覧ください。
[tegaki]そして一点注意があります。[/tegaki]
1.00 beta1 からキャッシュディレクトリを以下に変更しました。
1: wp-content/cache/wp-kougabu
お手数おかけしますが、上記の cache/wp-kougabu を作成していただき、書き込み属性をつけてください。 ついこんいれている方は同じ階層に wp-kougabu をつくる感じです。
再生成するのでやらなくても大丈夫ですが、0.50の元のキャッシュディレクトリ wp-content/plugins/wp-kougabu/cache から中のファイルを新キャッシュディレクトリうつすと、いままでつくられた画像はそのまま使われます。
すいませんが、お願いします。
ショートコードおよび今回追加された kougabu_get_images テンプレートタグとも以下の属性が使えます。
max_width |
画像の最大横幅を整数で指定します(px) デフォルトはショートコードは 180、テンプレートタグは 120 です。 |
max_height |
画像の最大縦幅を整数で指定します(px) width と height は関連していて画像のアスペクト比を維持しつつ最大で表示しようとします。 |
post_id |
0 を指定すると全ての画像を対象にします。 post id 番号を指定するとその post のみを対象とします。 デフォルトは 0 です。 |
start |
対象となる画像の最初の位置です。 デフォルトは検索結果の最初からです。 start を指定しないと対象全てが出力されます。 |
count |
対象画像の表示数です。 start が指定されているときに有効です。 デフォルトは 50 です。 |
start_date |
画像が添付された投稿の日付を yyyy/mm/dd、yyyy/mm、yyyy 形式で条件指定して抽出します。 この指定日以降の画像が対象となります。 デフォルトは指定なしです。 |
end_date |
start_date に対してその範囲の終了を同形式で指定します。 もし start_date と同じ値をとる場合は、yyyy であれば年、yyyy/mm であれば月、yyyy/mm/dd であれば日をその範囲とします。デフォルトは指定なしです。 |
title |
設定された文字列が記事名(post_title)に含まれている投稿を対象とします。デフォルトは指定なしです。 |
sort_key |
date(投稿日)、title (記事名)、random (ランダム)でソートを行います。 |
order_by |
DESC(降順)、ASC(昇順)を指定します。 sort_key とともに使い、デフォルトは DESC です。 |
テンプレートタグ kougabu_get_images のみで使える属性は以下です。
before |
出力する img タグの前につける文字列を指定します。 デフォルトは<li> です。 |
after |
出力する img タグの後ろにつける文字列を指定します。 デフォルトは</li> です。 |
echo |
画面に出力するかを指定します。 デフォルトは true です。 |
array |
出力を配列で返すかを指定します。 デフォルトは false です。 echo とは排他動作をし、array が優先されます。 |
というわけで、サンプルみたほうがはやい(笑)
ショートコードで、ランダムに選択した画像を 30枚、200x200pxで出力する例。(コウガブは実際には kougabu であります)
1: [コウガブ sort_type="random" start="0" count="30" max_width="200" max_height="200"]
テンプレートタグで、ランダム画像を 4枚 100x100px で出力する例。
1: <ol>
2: <?php kougabu_get_images(
3: 'before=<li style="display: inline">&sort_key="random"&start=0&count=4&max_width=100&max_height=100') ?>
4: </ol>
テンプレートタグのほうは引数を & でつなげる方式のやつです。 とりあえずデフォルトでそれらしくはなるようになっているので、まずは
1: <ol><?php kougabu_get_images(); ?></ol>
で動作確認後、引数を増やしていくといいと思います。
お気づきの方も多いかと思いますが、ランダムオプションはページング(nextpage) とあわせるとおかしなことになります。 表示ごとにランダムになるのでページングが意味をなしません。 一応、ソースいじると1時間とか1日は同じ並びとかにはできますので、気になる方はなおしてみてください。(それでも時間またぐとおかしいですが(笑
追加属性は wp-kougabu の派生版である wp-gatalog のソースを参考にさせていただいています。 助かりました、ありがとうございました。 🙂
いろいろいじってしまってタグに互換性がなくなってしまったものも多いです。。 すいません。 両者は共存可能ですので、いっしょに使われる方はタグを使い分けてみてください。
時間が無くてあまり試験できていません。。 ほんとうは wp-odeckr のほうもいじろうとおもっていたのですが、本日はここまでです。。
1.00 bata1 は、きれいな写真が多い みなみとおでこのサイトにも入っていますので、ぜひみてみてください。 hiromasa.another はスクリーンショットばかりでつまらないので 🙂
テンプレートタグ使用、サイドバー上のランダムイメージ。
ショートコード使用、ランダム画像ページ。
お二人とも試験におつきあいいただきましてありがとうございました。 🙂
ということで、まだいろいろ書くことがあったきがするのですが、今日のところはお休みなさい。Zzz..
ピンバック: 超☆電依研 » 甘いもん
ピンバック: Rif.3rd
ぼの 「beta1 が bata1 になってるお!」
(先ほど、某氏よりツッコミ依頼を承りましてございます)
つっこみ記念にそのままにしておきます(笑