メニューによってテンプレートを変更する方法がありましたら教えて頂けますか?

Simplicityの特徴 フォーラム テーマファイルのカスタマイズに関する質問など メニューによってテンプレートを変更する方法がありましたら教えて頂けますか?

8件の返信スレッドを表示中
  • 投稿者
    投稿
    • #27889
      Azu
      ゲスト

      こんばんは。
      メニューによってテンプレートを変更する方法がありましたら教えて頂けますか?
      具体的には、ページ毎に、左上のロゴマークの画像を変えたいのです。
      カテゴリ | サイト名の部分ではないです。すみません。

      固定ページのトップページやその他のページ:ロゴマーク(Azuのサイト)画像を表示したい。

      ブログのページ(カテゴリーページ):このページのみ、他のロゴマーク(日常ブログ)画像を表示したい。

      このようなことは可能なのでしょうか?

    • #27890
      アバター画像わいひら
      キーマスター

      header-logo.phpのロゴ表示部分でis_page
      is_singleis_categoryなどを利用して、条件分岐を行い、それぞれに違ったロゴも指定するようにカスタマイズすればできると思います。

    • #27892
      Hidekichi
      ゲスト

      ちょくちょくと僕が色々探す時に利用しているのが、

      wordpress 私的マニュアル

      で、ここでおおまかの関数でどういうのがあるのかを見て、詳しくはcodex(ダッシュボードのWordpressニュースあたりからイケます)等を参考に、色々やり方を探したりしてます。
      英語サイトも特にアレルギーがなければ、直接、何かしらの関数などを探したりすると思いがけぬ発見があったりしますよ。

      この前もGoogle+のカウンタを自前phpで取得する方法とか見つけたりして、ちょっとウナリました(笑)
      あるじゃんって言う発見はなかなか面白いものです。
      参考: Simplicityを少し改造してみた part4-2 Google+のカウントを自前phpで取得する編

      まぁスレの内容とは全く関係ないんですけどね(笑)
      wordpressって案外見たこともないような関数が、使えるじゃんって事もあったりするので、紹介までに。

    • #27893
      Azu
      ゲスト

      わいひらさん

      ありがとうございます。
      is_categoryを利用して出来ました。
      参照したサイトはこちらです。
      http://www.mdn.co.jp/di/articles/2782/?page=15

      <?php elseif ( is_category(‘blog’) ): ?>

      色々勉強になります。
      ありがとうございました。

    • #27894
      Azu
      ゲスト

      Hidekichiさん

      wordpress 私的マニュアル、とても参考になりました。
      まだ、初歩のことしかわからないので、関数これから勉強しようと思います。
      これからもどうぞよろしくお願いします。
      ありがとうございました。

    • #27895
      Hidekichi
      ゲスト

      jQueryでやる方法を書いておきます。

      (function ($) {
          $(function () {
              var postId = [3, 7, 10, 15, 20];
              var target = $("[id^=post]").attr("id");
      
              var num = target.match(/\d{1,}/);
             
              if ( $.inArray( parseInt(num[0]), postId ) >= 0 ){
                  $("#site-title").text("found id");
              }
      
          });
      })(jQuery);

      まんま子テーマjavascript.jsにコピペしてpostIdの部分を変更したい記事IDにしてください。
      また$(“#site-title”).text(“found id”);のfound idの部分は変更したいタイトルに書き換えてください。
      jQueryでページができあがってから書き換えるので、見た目が変わるだけです。SEO的にもサイトのタイトルをあまり変えない方が良いようにも思うので、ページをロードした後、タイトルを変更するという感じで作ってみました。

      ただし、SEO的に変えた方が良いという場合は、わいひらさんが言われてる方法でPHPを書き変えないといけないかと思います。その時は、親テーマをイジることになると思うので、アップデートの時に上書きされてカスタマイズした部分が無くなってしまう為、バックアップをきちんととっておくことを推奨します。

    • #27896
      Hidekichi
      ゲスト

      ああああ、まんまコピペはすぐにはマズイ。
      そのうち、わいひらさんが修正してくれると思いますが、それが待てないぐらいのあわてんぼうさんの場合は、

      fiddleで作ってみました

      を参考に。html部のpostidを色々変更してみて試して下さい。
      post IDの配列に数値がある時だけfound idとタイトルが変更されるはずです…おそらく(笑)

    • #27905
      Azu
      ゲスト

      Hidekichiさん

      jQueryで出来るのですね。
      とても参考になりました。
      親テーマのカスタマイズだとアップデートの際に、なくなってしまうとのことでしたので、header-logo.phpを子テーマにコピーしてから書き換えました。
      jQueryもこれから勉強しようと思います。
      どうもありがとうございました。

    • #27914
      アバター画像わいひら
      キーマスター

      Azuさん
      うまくいったようでよかったです。

      hidekichiさん
      Googleカウントの取得を自前でできるんですね。でも結構大変な作業になりそうですね。

8件の返信スレッドを表示中
  • トピック「メニューによってテンプレートを変更する方法がありましたら教えて頂けますか?」には新しい返信をつけることはできません。
スポンサーリンク
アドセンス(大)
アドセンス(大)