自動で除外カスタムフィールドでギャラリー表示をスイッチできるようにするプラグインを使うゴールおまけWordPressの記事投稿で、アップロードした画像をショートコードで簡単に画像ギャラリーを作成する機能がデフォルトで備わっていますが、基本的にあまり使いやすいものではありません。デフォルトのギャラリー機能でちょっと微妙な点は「アイキャッチ画像も含まれる」と「リンク先を自由に指定できない」の2つです。これを、実装できるようにしてみます。アイキャッチ画像を除外するまずはアイキャッチを除外します。ギャラリーは[gallery]というショートコードで、その記事内でアップロードした画像のギャラリーを実装出来ます。これは、結構クライアントさんにも手軽で良いと評判です。ギャラリー系のプラグインは便利なんですけど、プラグインそのものの利用方法に戸惑う方もいますので、個人的には極力デフォルトのギャラリーを使って貰うようにしています。exclude='画像ID']とすれば、任意の画像をギャラリーから除外できますので、ここにアイキャッチ画像のIDを含めればOK。投稿している場合は画像のclassにwp-image-***と付きます。これがIDになりますが、アイキャッチを投稿内に含めない場合はIDを調べるのも、excludeってわざわざ入力するのも面倒臭い。自分でも面倒臭いと思うような事をクライアントさんにやってもらう訳には行かないですね。ここは素直にテーマファイルにショートコードを埋め込んだ方が良さそうです。?>get_post_thumbnail_idで取得したIDをexcludeオプションに含めてあげます。これだと毎回ギャラリーが追加されてしまいますのでカスタムフィールドで条件分岐し、ギャラリーの有無を選択できるようにします。カスタムフィールドでギャラリー表示をスイッチできるようにするギャラリーを追加したいときはカスタムフィールドを登録すればいいだけ。?>上記のコードをテーマファイルに含めます。あとは、記事でimg_galleryという名前で、値にギャラリーの列数を指定すればアイキャッチ画像の含まれないギャラリーを手軽に実装出来ます。続いて、ギャラリーの画像のリンク先を任意に指定出来るようにします。プラグインを使う通常、画像にはリンク先を指定できますが、ギャラリーにはリンク先を指定出来ません。これはgallery-custom-linkというプラグインが実現してくれます。Linkという項目が追加されます。ここに、任意のリンク先を指定し、保存します。link="custom_url"]とするだけで、設定したURLが画像リンクになってくれます。これを先ほどのコードに含めれば完成ですね。?>link=”custom_url”を追加しました。これでギャラリー機能で追加した画像一覧からアイキャッチを除外して、画像に任意のリンク先を指定を簡単に実装出来る様にするという要望に応えることができます。出来れば標準でリンク先を指定出来るようになって欲しいです。※紹介したプラグインは標準装備のギャラリーテンプレートをオーバーライドします。利用にはご注意下さい。詳しくはデベロッパーの記事をご参照下さい。おまけ自動で除外する一つの方法としてget_post_thumbnail_id()でアイキャッチ画像のIDを取得して一旦ギャラリーを無効化し、配列からアイキャッチ画像を除外して再度ギャラリーのショートコードを有効化させる方法があります。shortcodeこれはこれで楽なのですが、一旦関数を除去したせいか、先ほどのプラグインが動作しませんでした。いう分けでこのコードは不採用としています。リスト化、というか自分用チートシート。カスタマイズTips記事です。"http://kachibito.net/wp-content/plugins/syntaxhighlighter/syntaxhighlighter3/scripts/shCore.js-end");/*]]>*/タイトルとURLをコピーしました。