cocoonフック調査~get_entry_card_thumbnail_sizeの使い方と活用例

タナビーの高梨です。
WordPressのテーマ「Cocoon」には、テーマ改変なしでデザインや動作を拡張できる豊富なアクション・フィルターフックが用意されています。
分かる範囲で内容を調査したのでブログにまとめていこうと思います。
今回はインデックスページのエントリーカードのサムネイル画像サイズを変更できるフィルターフック
👉get_entry_card_thumbnail_size
です
フックの概要
フック名 | 発火タイミング |
---|---|
get_entry_card_thumbnail_size | インデックスページのエントリーカード描画時(記事ごとに発火) |
発火条件
インデックスページのエントリーカード描画時に、記事ごとに発火します。
apply_filters呼び出し元のソースコード
lib/entry-card.php
return apply_filters('get_entry_card_thumbnail_size', $thumbnail_size, $count);
引数
$thumbnail_size:(string)画像サイズ名
$count:(int)何番目のカードか
カスタマイズコード例
全てのサムネイルサイズを無条件に変更する例です。
add_image_size('index_thumb', 320, 168, true);
add_filter('get_entry_card_thumbnail_size', function (){
return 'index_thumb';
});
// 公式HPより引用(https://wp-cocoon.com/thumbnail-size-custom/)
$countを判別すれば、以下のような操作も可能です。
・最初の記事だけサイズを変える
・奇数と偶数でサイズを変える
注意点
・使用するサムネイルサイズは事前に add_image_size() で登録しておく必要があります
まとめ
・get_entry_card_thumbnail_size はインデックスページのサムネイルサイズを制御できる便利なフィルターフック
・$count を使えば「1番目だけ特別なサイズ」「偶数と奇数でサイズ変更」といった高度な制御が可能
・サイトデザインに応じた柔軟なレイアウト調整に活用できる