サポート » 使い方全般 » カスタム投稿タイプのヘッダーについて

  • 解決済 LUARCE

    (@luarce)


    お世話になります。ご教示いただけませんでしょうか。

    サイドメニューのカテゴリを色分け表示で
    Colorful Categoriesというプラグインを使いました。

    参考にしている記事
    http://blog.bluetreevisual.com/wordpress/colorful-categories/

    上記を参考にしながらカテゴリーの色分け変更(テキストの背景)
    はできたのですが、ヘッダーの背景色もカテゴリの色に合わせたい
    という内容になります。

    そこで上記ブログ記事の通り、カテゴリーの色変更は、

    <ul>
    <?php foreach((get_the_category()) as $cat){
    $color = ColorfulCategories::getColorForTerm($cat->term_id, true);
    echo '<li style="background-color: '.esc_attr($color).';">' . $cat->cat_name . '</li>'; } ?>
    <ul>

    をそのまま使用してできましたので、

    一部を下記のように改編して、
    header.phpのヘッダーの背景色を指定してしている部分(#header-wrap)に貼付ました。

    <!-- プラグイン:Colorful Categoriesからカテゴリーカラーコードを抽出して反映 -->
    <?php foreach((get_the_category()) as $cat){
    $color = ColorfulCategories::getColorForTerm($cat->term_id, true);
    echo '<div id="header_wrap" style="background-color: '.esc_attr($color).';">' ; } ?>

    このようにしたところ、通常の投稿ではヘッダーの背景色は変わるのですが、カスタム投稿タイプの記事のヘッダーになりますとbackground-colorが出力されておらず、色が変わりませんでした。

    phpは初心者レベルなもので、、header.phpはインクルード?となっているため通常の投稿でもカスタム投稿でも同様に出力されるものだと思っていたのですが、違いますでしょうか?

    何卒お力添えいただけませんでしょうか?

    よろしくお願い申し上げます。

3件の返信を表示中 - 16 - 18件目 (全18件中)
  • ishitaka 様

    おはようございます。
    お世話になります。

    コード本当にありがとうございました。
    エラーなく動きました!

    すごいなぁと感心しながらコード眺めています。

    変数はわかるのですが、
    恐らく“存在”を判定するために使われた「class_exists」のようなコマンド?
    はもともと決められているものなのでしょうか??

    すみません、質問ばかりで・・・

    取り急ぎ試行の結果を兼ねまして、
    御礼申し上げます。

    あるプラグインが有効化どうかを判定する方法はいろいろありますが、今回は Colorful Categories プラグインの ColorfulCategories クラスが定義されているか(存在するか)どうかで判定してみました。
    コード内の ColorfulCategories::getColorForTerm は ColorfulCategories クラスの getColorForTerm メソッド(関数)を使用するということです。ColorfulCategories クラスが存在しない(プラグインが有効ではない)場合、PHP エラーになるため判定する処理を入れておきました。

    詳細は PHP のドキュメントを参照してみてください。
    http://php.net/manual/ja/function.class-exists.php

    • この返信は1 年、 9 ヶ月前に  ishitaka さんが編集しました。

    ishitaka  様

    とてもご丁寧に解説をいただきまして、
    誠にありがとうございました。

    読むと何となく理解できるのですが、いざ自分で何か処理をしたいと
    考えてもコードにできない、関数の記述サンプルを見たりするのですが、
    それを参考にどう変更して良いか、どこから何をどう書けばよいか
    分からなくなってしまうことが多々あります。

    経験と才能の差だとお恥ずかしい限りです。

    もう少し自分なりにもできるようになりたいので、
    できるだけプログラムに触れて、本も読んだりしながら
    前進できますよう頑張りたいと思います。

    この度は本当にありがとうございました。
    またの際にも何卒よろしくお願い申し上げます。

3件の返信を表示中 - 16 - 18件目 (全18件中)
  • トピック「カスタム投稿タイプのヘッダーについて」には新たに返信することはできません。