質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Q&A

解決済

1回答

3560閲覧

wordpressにて、カテゴリー毎にヘッダ画像を変えたい

kurono_you

総合スコア17

WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

0グッド

0クリップ

投稿2016/08/30 04:22

編集2016/08/30 05:32

初めまして、wordpressにて、カテゴリ別でヘッダ画像を変えたいと思っております。

テーマは
https://wordpress.org/themes/sixteen/
こちらのsixteenというものをベースにさせていただいております。

###試したこと

■header.php に以下を記述

<?php $cat = get_the_category(); $cat = $cat[0]; ?> <div class="cat-<?php echo $cat->"cat_ID; ?>"></div>

■css に記述

.cat-6 { background:url(piyo1) no-repeat; } .cat-7 { background:url(piyo2) no-repeat; } .cat-2 { background:url(piyo3) no-repeat; }

piyo1-3は画像です。

出力されたソースコードを載せるよう、ご指摘頂きましたので、載せようと思ったのですが、ソースがごちゃごちゃしておりまして、どこを載せたものか、わからず。
すみません。

現在制作中のサイトURLを載せます。

http://workfield3.wpblog.jp/

これでさっぱり変化がありません。
いい方法がございましたら、ご教示いただけますと非常に助かります。
よろしくお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

kei344

2016/08/30 04:31

コードはコードブロックで囲んでいただけませんか? ```(バッククオート3つ)で囲み、前後に改行をいれるか、コードを選択して「<code>」ボタンを押すとコードブロックになります。また、出力されたHTML(ブラウザで「ページのソースを表示」)も質問文に追記ください。あと、「piyo1」は画像でしょうか。
kurono_you

2016/08/30 04:44

情報を追記いたしました。ご指摘ありがとうございます。
guest

回答1

0

ベストアンサー

とりあえず下記のようになっていますね。

HTML

1<div class="cat-"></div>

HTML

1<div class="cat-small_kawa"></div>

ということは、echo $cat->cat_ID; と書かれていない可能性が高いです。cat_ID は数値が返るはずなので、スラッグが来ていると言うことは echo $cat->slug; と書かれているのでは。

get_the_category() はループ内か投稿ページでのみ使えるので、カテゴリーアーカイブでは使えません。なので、下記のように書くことになると思います。

PHP

1if ( is_category() ){ 2 $cat_obj = get_category( get_query_var( 'cat' ), false ); 3} elseif ( is_single() ) { 4 $cat_obj = get_the_category(); 5 $cat_obj = $cat_obj[ 0 ]; 6} 7if ( !empty( $cat_obj ) ){ 8 printf( '<div class="cat-%d"></div>', $cat_obj->cat_ID ); 9 // echo '<div class="cat-'.$cat_obj->cat_ID.'</div>'; 10}

【WordPress:確実なカテゴリ情報の取り方 | hacknote】
http://hacknote.jp/archives/5248/


####いくつか指摘します

1.質問文に「sixteen」とありますが、「fifteen」です。
/wp-content/themes/fifteen/style.css?ver=4.6

2.height: auto; では無く高さを設定する必要有り。

CSS

1.cat-6 { 2 background:url(/**/) no-repeat; 3 width: 100%; 4 height: auto; /* .cat-6 のHTML内に要素が何も無いので、高さを設定する必要がある。 */ 5}

3.タイプミス。

HTML

1<div class"search-form-top"> 2<!-- ↑ 「=」が抜けている -->

HTML

1<div class="form-group> 2<!-- ↑ 「"」が抜けている -->

投稿2016/08/30 05:33

kei344

総合スコア69407

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

kurono_you

2016/08/31 05:57

なんとかカテゴリ別にヘッダ画像をかえることができました。 ありがとうございます。 そのほか、ご指摘賜りまして、本当に感謝しきりです。 徐々に直してゆきます。 本当にありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問