固定ページ毎に違うヘッダー画像をアイキャッチで設定する

固定ページ毎に違うヘッダー画像を表示したい時。忘れないようにメモメモ。
※テーマがカスタムヘッダー対応の場合です。

<?php if (has_post_thumbnail($post->ID)): ?>
<p><?php echo get_the_post_thumbnail($post->ID); ?></p>
<?php else: ?>
<p><img src="<?php header_image(); ?>" alt="" title="" width="<?php echo HEADER_IMAGE_WIDTH; ?>" height="<?php echo HEADER_IMAGE_HEIGHT; ?>" /></p>

解説

  • 1行目の部分、<?php if~~ で、もし固定ページにアイキャッチ画像があれば
  • 2行目の部分、アイキャッチ画像を表示させて
  • 3行目の部分、<?php else: ?>で、もしない場合は
  • 4行目の部分でカスタムヘッダーで登録したイメージを表示させる

という感じです。

カスタムヘッダーが対応していない場合は、function.phpに以下を記入

//+++++++++++++++++++++++++++++++++++++++++
//カスタムヘッダー
add_custom_image_header('','admin_header_style');
function admin_header_style() {}
//標準のヘッダー画像を指定
define('HEADER_IMAGE','%s/images/header.jpg');
//ヘッダー画像の横幅と高さを指定
define('HEADER_IMAGE_WIDTH','800');
define('HEADER_IMAGE_HEIGHT','380');
//ヘッダーの文字を隠す
define('NO_HEADER_TEXT',true);