サポート » テーマ » ホームとその他の動きを異なるものにしたい if文

  • 解決済 goodtimes

    (@goodtimes)


    こんにちは
    kubricのデフォルトテーマを使用しています
    PHPはwordpress(2日前に始めた)ではじめて見るレベルです

    ・ホームの場合は、サイドバーを非表示&ページ?部分を取り払ったサイドバー分広げる

    ということをしたいのですが、現状、ホームかどうかの判別すらできていません
    書き足した部分は、index.php
    get_sidebar();に ホームじゃなかったら呼ばないという条件を足している(つもり)です

    構文が間違っているのか、書くところが間違っているのか、それともどちらもなのか・・

    初歩的の初歩だと思うんですが、どうぞご指摘いただけませんでしょうか
    また、基本的なPHP構文などの書き方が乗っているオススメサイトなどあれば、
    合わせて教えていただければ非常に助かります

    ===私が書いた文章 index.php

    <?php if (is_home()) //ホームなら?
    {get_footer();}             //フッターをよぶ
    else                             //それ以外なら? 
    {get_sidebar();              //サイドバーをよぶ
    get_footer();}              //フッターをよぶ
    ?>

    ===

3件の返信を表示中 - 1 - 3件目 (全3件中)
  • index.phpではなく、page.phpに記述してあるget_sidebar辺りを消去または無効にするとよいでしょう。

    ただし、これだけではページ部分を取り払ったサイドバー分広げる事はできないので、style.css(CSSが記述してあるファイル)から広げたいBox(id or class)を複製し、違うid名またはclass名でコピー&ペーストすると良いでしょう。この複製しid名またはclass名を変更したCSSのwidth部分に広げたいピクセル値を記述。

    このやり方であればPHPを記述する必要がないので良いと思います。

    ===私が書いた文章 index.phpは必要ないので消去!!!

    トピック投稿者 goodtimes

    (@goodtimes)

    MONKMASTERさん、こんにちは
    早速のご回答ありがとうございます

    教えてくださったように、index.phpを元に戻して、page.phpのget_sidebarを削除しました
    すると、
     ・ 投稿記事が出てくるページ?のみがサイドバーつき/それ以外はサイドバーなし
    と切り替わりました
    (page.phpは、投稿記事が表示されるページをつかさどるファイルなのですね?)

    で、結果からいいますと、これではわたしの思っているようには動いていません
    私の言い方が悪かったです お手間を取らせてしまったのに、すみません…

    私がどうしようとしているかと申しますと
    (素人ながらに関係ないことだから書かないでおこうと気を利かせたつもりがあだになりましたので、全部書きます。今回の件には必要ないよ!というところは無視してくださればと思います)

    ===
    1.6~7階層くらいのページで構成される(親ページは6くらい、子などを入れた全ページはおそらく40~50くらい)

    2.親ページの一つとして「トップページ」を作る(この下に子はいない)

    3.親ページの一つとして「投稿」されていくページを作る(この下に子はいない)

    4.ダッシュボードの設定>表示設定>トップページの表示で、トップページと投稿ページをそれぞれ2.3.のページを指定する

    5.メインページ(=HOME)のときは、サイドバーを非表示にする

    6.親ページ名称のみを抜き出して、ヘッダー下に横並びでナビボタンを作る

    7.サイドバーには、選択された親ページの子供たち名称を表示

    8.↑ただし、その中でもある一定以上の階層(子の子の子の子の子など)は非表示

    9.8.で非表示にした子たちは、ヘッダーらへんで表示(「よくある質問」とか)

    10.特定の階層の子供を選択したらナビボタン内容、ページレイアウトが変わる

    ===
    以上の10点が今現在(としかいえないのが申し訳ないのですが)やろうと思っている点です
    で、今回お聞きしようとしたのは、5.のHOMEのときのサイドバー非表示方法、だったのですが
    投稿しないページは、メインページだけではないので
    せっかく教えていただいたものが使えないのでは?と思っています
    (この推測もあってるかわかりませんが・・・)

    長々書きましたが、うまく伝わりますでしょうか・・?

    以上の状態で、わたしがやりたい「HOMEはサイドバーを消す」ということは
    どうすれば実現できるでしょうか??

    トピック投稿者 goodtimes

    (@goodtimes)

    すみません、自己解決いたしました
    is_homeではなく is_front_pageにしたら、動いてくれました
    書いたところは、MONKMASTERさんがおっしゃてたpage.phpです

    ありがとうございました!

    <?php if (is_front_page()) { ?>
    	<?php get_footer(); ?>
    <?php } else { ?>
    	<?php get_sidebar(); ?>
    	<?php get_footer(); ?>
    <?php } ?>
3件の返信を表示中 - 1 - 3件目 (全3件中)
  • トピック「ホームとその他の動きを異なるものにしたい if文」には新たに返信することはできません。