サポート » テーマ » テーマヘッダーの切り替えでレイアウト乱れる

  • 解決済 typelog

    (@typelog)


    ヘッダー画像を非表示にしたい固定page向けに、header.phpをモジッてheader-noimg.phpを作りました。
    2カラムレイアウトの左を固定page記事、右をsidebarにするために、sidebar-page.phpをモジッてsidebar-page-noimg.phpを作り、中のget_header()をget_header(‘noimg’)にしましたが、このテンプレートでは固定page記事の下にsidebarが落ちてきれいな2カラムになりません。
    元々のsidebar-page.phpテンプレートに戻すと問題なくきれいに2カラムが表示されます。
    header-noimg.phpは元々のheader.phpの画像表示部分をコメントアウトしただけです。
    簡単過ぎる中にどこか落とし穴があると思いますが、アドバイスお願いします。
    テーマはTwenty Eleven 1.0です。

3件の返信を表示中 - 1 - 3件目 (全3件中)
  • モデレーター jim912

    (@jim912)

    typelogさん、こんにちは。

    Twenty Elevenでは、body_classで出力されるclassにsingularがあると1カラム用のCSSが適用されるようになっています。
    Twenty Eleven をそのままカスタマイズしているのであれば、functions.phpの一番最後にある

    function twentyeleven_body_classes( $classes ) {
    
    	if ( function_exists( 'is_multi_author' ) && ! is_multi_author() )
    		$classes[] = 'single-author';
    
    	if ( is_singular() && ! is_home() && ! is_page_template( 'showcase.php' ) && ! is_page_template( 'sidebar-page.php' ) )
    		$classes[] = 'singular';
    
    	return $classes;
    }
    add_filter( 'body_class', 'twentyeleven_body_classes' );

    の中の

    if ( is_singular() && ! is_home() && ! is_page_template( 'showcase.php' ) && ! is_page_template( 'sidebar-page.php' ) )

    if ( is_singular() && ! is_home() && ! is_page_template( 'showcase.php' ) && ! is_page_template( 'sidebar-page.php' ) && ! is_page_template( 'sidebar-page-noimg.php' ) )

    にしてみてください。

    子テーマとして作成しているのであれば、TwentyElevenの投稿/固定ページを2カラムに! functions.phpのコードでサイドバーを出す!を参考に、singularを取り除く場合の条件分岐を

    is_page_template( 'sidebar-page-noimg.php' )

    に変更してあげれば大丈夫かと思います。

    トピック投稿者 typelog

    (@typelog)

    アドバイス、ありがとうございます。
    最初の方法で2カラムが並んで表示されるようになりました。
    ただ、ページ記事の後にコメント投稿フォームがあると元々ある’sidebar-page.php’ と’sidebar-page-noimg.php’ テンプレートでは表示されるフォーム横幅サイズが違います。
    別のshowcase.phpに対してshowcase-noimg.phpでは、両方ともsidebarがないにもかかわらず表示されるレイアウト異なります。
    同様にsingular適用外にしてみたところ、showcase.phpとshowcase-noimg.phpでは表示される横幅サイズが違います。
    テンプレートの追加は思ったほど簡単ではないようで、アドバイスで手掛かりが得られたので調べてみます。
    他にアドバイスがありましたらよろしくお願いします。

    トピック投稿者 typelog

    (@typelog)

    アドバイスどおりにsingularを取り除くことと、一つの例ですが、テーマのstyleにpage-template-sidebar-page-noimg-phpの項を加えてようやくきれいに収まりました。
    ありがとうございました。

3件の返信を表示中 - 1 - 3件目 (全3件中)
  • トピック「テーマヘッダーの切り替えでレイアウト乱れる」には新たに返信することはできません。