サポート » 使い方全般 » single.phpのカスタマイズ

  • 解決済 mountod

    (@mountod)


    お世話になります。
    現在、意匠デザインのテーマにさらに、カスタマイズを加えようとしています。
    具体的には、新規投稿へのスタイル適用をスラッグごとに変更できるようにしたいです。


    ○○カテゴリの、
    ××子カテゴリの、
    ■■スラッグには、
    ppp.php テンプレートを採用するという風にしたいです。
    ※ppp.phpは意匠デザインのsingle.phpをコピーして作製しました。

    single.php内の記述 → ppp.phpへの分岐、

    if ( in_category("××") ) {
        include(TEMPLATEPATH . "/single/ppp.php");
    }

    ちなみに、固定ページで同じ目的はだいたい成功してますが、
    投稿内容が動的なので、固定ページでの実装は今回は見送りました。
    新規投稿で実装したいのですが・・・

7件の返信を表示中 - 1 - 7件目 (全7件中)
  • トピック投稿者 mountod

    (@mountod)

    追記

    上記のコードは、ルートに”single”というディレクトリを作成しその中のppp.phpを指定しました。

    問題は
    ・分岐の記述をsingle.phpの1行目に書いた事
    ・その分岐に失敗しているという事
    分岐に成功していることを確かめる方法は、××カテゴリーに投稿した
    記事の要素を見て判断していますが、それ以外に良い方法はあるのでしょうか。

    申し訳ありませんが、ご回答のほうよろしくお願いします。

    カテゴリーごとに投稿のデザインを変えたいということですよね?
    フォーラムに似たような内容のトピックが上がっていたのを見つけました。
    試してみてはいかがでしょうか?

    [解決済み] single.phpによるカテゴリごとのページ振り分けに関して質問です
    http://ja.forums.wordpress.org/topic/6381?replies=3

    トピック投稿者 mountod

    (@mountod)

    アドバイスありがとうございます。
    single.phpへの記述は問題無いかと思うんですが、
    記述内の範囲に
    例えば
    <.page_comment>にpostsを出力

    この場合、single.phpの中には該当記述が見当たりませんでした。
    投稿の出力に関する記述はどこを見たらよいのでしょうか。。。
    初歩的な質問ですみません。。

    記述内の範囲に
    例えば
    <.page_comment>にpostsを出力

    すみません、何を指しているのかわかりませんでした。

    この場合、single.phpの中には該当記述が見当たりませんでした。
    投稿の出力に関する記述はどこを見たらよいのでしょうか。。。

    single.phpの中に分岐を書いてファイルを読み込んでいると思うので、出力に関する記述は読み込んだファイルに書くことになりますね。

    トピック投稿者 mountod

    (@mountod)

    すみません。
    <?php the_content(); ?>
    で出力してました。

    余談で申し訳ありませんが、
    if(in_category(""))
    にカテゴリを複数指定する方法は、カンマで区切ればいいのでしょうか、
    それとも、else ifで繋げるしかないのでしょうか。。。

    if(in_category("A")){
    }
    if(in_category("B")){
    }

    if(in_category("A")){
    }else if(in_category("B")){
    }

    これらって一見では同じに見えますよね?
    厳密にいうとユーザーインタフェイスも違うのでしょうか。。。

    in_category は配列を渡して複数指定ができます。

    if ( in_category( array( 'A', 'B' ) ) {
        // AまたはBカテゴリーに属するときの処理
    }

    これらって一見では同じに見えますよね?

    if を複数回た場合は、1つ目の条件が一致した場合、さらに2つ目の条件が一致した場合、2つともの処理が実行されます。
    elseif でつないだ場合は 1つ目の条件が一致した場合はその処理だけ、一致しなかった場合は2つ目の条件が一致するか確認し一致した場合はその処理だけ…という具合に1つしか処理が実行されません。

    トピック投稿者 mountod

    (@mountod)

    なるほど。
    ありがとうございます。
    納得いきました。

7件の返信を表示中 - 1 - 7件目 (全7件中)
  • トピック「single.phpのカスタマイズ」には新たに返信することはできません。