サポート » 使い方全般 » ヘッダー(バナー)画像の自動化

  • 解決済 Chanchan.

    (@eureka20080321)


    いつもお世話になっております。

    メニューバーの下に、ヘッダー(バナー)画像??を各メニュー(カテゴリー)項目ごとに変えたものを設置しています。

    アイキャッチ画像が常にヘッダー部分に来るような設定を教えていただき、投稿する度にアイキャッチ画像を選び、公開している状態です。

    これを投稿時にカテゴリーをチェックした際、「このカテゴリーはこの画像」「このカテゴリーだとこの画像」の様に固定ができないものでしょうか?
    画像の幅や高さ、位置などは気に入っています。

    最終的な目的は、アイキャッチの画像を他の部分で使いたいと思っています。

    説明が分かりずらいかも知れませんが、どうか教えてください。
    よろしくお願いします。

    ヘルプの必要なページ: [リンクを見るにはログイン]

10件の返信を表示中 - 1 - 10件目 (全10件中)
  • 各投稿のヘッダー画像は、その投稿のアイキャッチを使い、カテゴリーアーカイブでは、カテゴリー別の画像を割り当てるということからでしょうか。アイキャッチを使うのをカテゴリーで振り分けるのなら、現在の条件分岐の対象を替えるだけではできませんか。

    こんにちは

    現状どのようにアイキャッチ画像を表示されているのでしょうか?
    コードをお知らせください。

    こちらのトピックのコードでしょうか?

    <?php if ( has_post_thumbnail() ) : ?>
    <div class="inner-banner"><?php the_post_thumbnail( 'full' ); ?></div>
    <?php endif; ?>

    こちらのコードを下記のように変更するといいかと思います。
    コードの $images_table はカテゴリー(スラッグ名)と画像(ID)のテーブルです。

    例:

    <?php
    	if ( is_single() ) {
    		if ( $cats = get_the_category() ) {
    			$cat = $cats[0];
    
    			$images_table = [
    				'カテゴリーのスラッグ' => 123,
    				'カテゴリーのスラッグ' => 456,
    				'カテゴリーのスラッグ' => 789,
    			];
    
    			if ( isset( $images_table[$cat->slug] ) ) {
    				$html = wp_get_attachment_image( $images_table[$cat->slug], 'full' );
    				echo "<div class='inner-banner'>{$html}</div>";
    			}
    		}
    	}
    ?>
    • この返信は3年、 8ヶ月前にNaoko Takanoが編集しました。
    • この返信は3年、 8ヶ月前にishitakaが編集しました。
    トピック投稿者 Chanchan.

    (@eureka20080321)

    天宮さま
    お忙しい中、ご返信いただきありがとございます。

    投稿のアイキャッチを使うわけではなく、そのカテゴリーで投稿した場合には上部にその画像が自動的に配置されているみたいなイメージです。
    伝わりずらくってすみません。
    みなさんがどの様にされているのか?が分からず、その様に出来ればと思い質問してみました。

    トピック投稿者 Chanchan.

    (@eureka20080321)

    ishitakaさま

    いつもお付き合いいただき、本当にありがとうございます。
    おっしゃる通り、そのトピックのコードです。

    教えていただいたコードと置き換えてみたのですが、いまいち表示されません。
    こんな感じで入れました。

    <!--ヘッダー画像の固定-->
    <?php
    	if ( is_single() ) {
    		if ( $cats = get_the_category() ) {
    			$cat = $cats[0];
    
    			$images_table = [
    				'home' => eureka_home.png,
    				'about' => eureka_about.jpg,
    				'infomation' => photo_191022_16-e1571738553781.jpg,
                    'news' => photo_191022_02-e1571886043688.jpg,
                    'products' => photo_191022_09-e1571743292545.jpg,
                    'salon' => photo_191022_01-e1571743749981.jpg,
                    'price' => photo_191022_19-e1571742564336.jpg,
                    'staff' => photo_191022_15-e1571743627458.jpg,
                    'recruit' => photo_191022_16-1-e1571743517148.jpg,
                    'eureka_blog' => photo_191022_10-e1571907205860.jpg,
                    'eureka-beauty_blog' => photo_191022_08-1-e1571749088628.jpg,
    			];
    
    			if ( isset( $images_table[$cat->slug] ) ) {
    				$html = wp_get_attachment_image( $images_table[$cat->slug], 'full' );
    				echo "<div class='inner-banner'>{$html}</div>";
    			}
    		}
    	}
    ?>
    <!--ヘッダー画像の固定-->
    

    お手数をお掛けしますが、もう少しお付き合いください。

    $images_table の値は、ファイル名ではなく画像の ID (メディア ID) の数字で指定してください。
    メディア ID の調べ方は、こちらの記事の「メディア ID の調べ方」セクションをご覧ください。

    トピック投稿者 Chanchan.

    (@eureka20080321)

    ishitakaさま

    丁寧にありがとうございます。
    教えていただいたメディアIDを入れてみました。
    やり方の問題だと思いますが、いまいちワークしませんでした。

    決して使い勝手が悪かったわけではないので、諦めた方が良いでしょうか?

    最終的な目的は、他でもご相談いたしましたブログカードの為で、カードの画像はアイキャッチ画像が使われる仕様だった様なので、ならばバナー画像の方を変えてしまおうと考えたものでした。

    ご提案いただいたメディアと文章も試してみたのですが、どうしてもブログカードを使ってみたかったという
    のが正直なところでした。

    質問からズレてしまいましたが、よろしくお願いします。

    トピック投稿者 Chanchan.

    (@eureka20080321)

    <!--ヘッダー画像の固定-->
    <?php
    	if ( is_single() ) {
    		if ( $cats = get_the_category() ) {
    			$cat = $cats[0];
    
    			$images_table = [
    				'home' => 3534,
    				'about' => 322,
    				'infomation' => 318,
                    'news' => 306,
                    'products' => 312,
                    'salon' => 305,
                    'price' => 321,
                    'staff' => 317,
                    'recruit' => 350,
                    'eureka_blog' => 313,
                    'eureka-beauty_blog' => 349,
    			];
    
    			if ( isset( $images_table[$cat->slug] ) ) {
    				$html = wp_get_attachment_image( $images_table[$cat->slug], 'full' );
    				echo "<div class='inner-banner'>{$html}</div>";
    			}
    		}
    	}
    ?>
    <!--ヘッダー画像の固定-->

    こんな感じで入れました。

    これを投稿時にカテゴリーをチェックした際、「このカテゴリーはこの画像」「このカテゴリーだとこの画像」の様に固定ができないものでしょうか?

    カテゴリー毎ですよね。
    ‘home’ や ‘about’ は投稿のスラッグではないですか?カテゴリーのスラッグ名を指定してください。

    トピック投稿者 Chanchan.

    (@eureka20080321)

    ishitakaさま

    お忙しい中、ありがとうございます!

    私の知識では行ってはいけないほど、大変なことをすることなんだと思い、少し考えを改めようと思います。
    意味合いは理解できました。

    毎回、丁寧に接していただき本当に感謝しています。

    また懲りずに相談にのてください。よろしくお願いします。

10件の返信を表示中 - 1 - 10件目 (全10件中)
  • トピック「ヘッダー(バナー)画像の自動化」には新たに返信することはできません。