• 赤色のリンクは、まだ日本語Codexに存在しないページ・画像です。英語版と併せてご覧ください。(詳細

このWikiはいつでも誰でも編集できます

ギャラリーショートコードの使い方

提供: WordPress Codex 日本語版
Gallery Shortcodeから転送)
移動先: 案内検索

この項目「ギャラリーショートコードの使い方」は、翻訳チェック待ちの項目です。加筆、訂正などを通して、Codex ドキュメンテーションにご協力下さい。

ギャラリー機能により投稿や固定ページへ画像ギャラリーを追加できます。

WordPress バージョン 2.5から3.5まで、ギャラリーショートコードは一般的に以下の基本的な形態で使用しました。これは投稿に添付された画像のサムネイルギャラリーを表示していました:

[gallery]

WordPress 3.5以降では、ギャラリーショートコードは以下のようにデフォルトで画像 ID を含めます:

[gallery ids="729,732,731,720"]

この形式のギャラリーショートコードは 3.5 の新機能というわけではありません。以前は include 属性を使って同様に指定できました。しかし今の形式のほうが、バージョン3.5で導入された メディアワークフロー /en で簡単に作ったり編集したりできます。

ショートコード内に ID を指定することにより、投稿に「添付」されていない(投稿や固定ページの編集画面でアップロードしていない)画像もギャラリーへ入れることができます。この柔軟性があるので、任意の枚数の画像を含んだ任意の個数のギャラリーを作って埋め込むことができます !

参考: ギャラリーショートコードの「基本形」である [gallery] を投稿や固定ページで使うと、その投稿や固定ページへ「添付されている」画像だけが表示されます。

以下の書き方でいくつかオプションを指定することができます。

[gallery option1="value1" option2="value2"]

テンプレートファイル内で直接ギャラリーを出力することもできます。

 <?php echo do_shortcode( '[gallery option1="value1"]' ); ?>

以下のように記述しても大丈夫です。

 <?php
    $gallery_shortcode = '[gallery id="' . intval( $post->post_parent ) . '"]';
    print apply_filters( 'the_content', $gallery_shortcode );
 ?>

オプション

以下の基本的なオプションをサポートしています:

orderby 
画像の表示順序のキーとなる項目を指定します。スペース区切りで複数指定できます。初期値は "menu_order ID" です。"RAND"(ランダム)も指定できますがその場合、order の指定は無視されます。
  • menu_order - メディアを挿入ポップアップのギャラリータブ内で画像を手動で並べ替える
  • title - メディアライブラリ内の画像タイトルの順
  • post_date - 日付/時刻でソート
  • rand - ランダムな順
  • ID
order 
画像の表示順序を ASC(昇順)または DESC(降順)で指定します。初期値は "ASC" です。例えば ID の降順にソートするには:
 [gallery order="DESC" orderby="ID"]
columns 
カラム数を指定します。それぞれの行の後には改行タグが挿入され、カラムの幅は適切に調整されます。初期値は3です。0にすると改行タグは挿入されません。例えば、4カラムのギャラリーなら以下のように指定します。
[gallery columns="4"]
id 
投稿 ID を指定します。指定された投稿に添付されている画像のギャラリーを表示します。ID の指定がない場合は、現在の投稿がギャラリーの対象になります。例えば、ID が123の投稿に添付された画像のギャラリーを表示するなら以下のように指定します。
[gallery id="123"]
注意: id と ids は異なるオプションです。ids は include と同様に画像の ID を指定します(2つ以上はコンマで区切ります)。
size 
ギャラリーとして表示するサムネイル画像のサイズを指定します。指定できる値は "thumbnail", "medium", "large", "full" および add_image_size() で登録した追加の画像サイズです。初期値は "thumbnail" です。"thumbnail(サムネイルのサイズ)", "medium(中サイズ)", "large(大サイズ)" の画像サイズは管理画面の 設定 > メディア で指定できます。例えば、"medium(中サイズ)" の画像ギャラリーを表示するなら以下のように指定します。
[gallery size="medium"]


さらに高度な設定をすることもできます。

itemtag 
ギャラリーの各項目(画像とキャプション)を囲む XHTML タグの名前を指定します。初期値は "dl" です。
icontag 
ギャラリーの各画像を囲む XHTML タグを指定します。初期値は "dt" です。
captiontag
各キャプションを囲む XHTML タグを指定します。初期値は "dd" です。例えば、ギャラリーのマークアップを div, span, p タグに変更するなら以下のように指定します。
[gallery itemtag="div" icontag="span" captiontag="p"]
link
"file" を指定すると各画像は画像ファイルへリンクされます。初期値は添付ファイルのページのパーマリンクです。
  • file - 画像ファイルに直接リンク
  • none - リンクなし
[gallery link="file"]
include
表示したい添付画像の ID をコンマで区切って指定します。以下のように指定すると、指定した ID の画像のみ表示されます。
[gallery include="23,39,45"] 
exclude
表示したくない添付画像の ID をコンマで区切って指定します。include と exclude は同時に指定しないでください。同時に指定した場合は include が優先されます。
[gallery exclude="21,32,43"] 

開発者向け - 考慮すべきこと

ID を明示しないギャラリーのデフォルトの期待される動作は、現在の投稿を親の投稿とするすべての画像を追加します。つまり、現在の投稿の編集画面で「メディアを追加」ボタン/リンクを使ってアップロードしたすべての画像を追加します。これには後から投稿へ追加したすべての添付ファイルも含まれることを覚えておきましょう。それが添付ファイルとして表示されていたかどうかは関係ありません。

引数を与えない場合のデフォルトの動作(フォールバック)は以下のとおりです: ...lorem [gallery] ipsum...

$attachments = get_children( array(
	'post_parent'    => $attr['id'],
	'post_status'    => 'inherit',
	'post_type'      => 'attachment',
	'post_mime_type' => 'image',
	'order'          => $attr['order'],
	'orderby'        => $attr['orderby'],
) );

さらに shortcode_atts()(および他の処理)で extract() を使うのは止めましょう。IDE(訳注:統合開発環境)はそれをバックトレースできません

変更履歴

  • 2.9 : include, exclude オプション追加
  • 2.5 : 新規機能

ソースファイル

ギャラリーショートコードは wp-includes/media.php にあります。

関連項目

ショートコード: [audio] /en, [caption] /en, [embed] /en, [gallery] /en, [playlist] /en, [video] /en

最新英語版: WordPress Codex » Gallery Shortcode最新版との差分