WordPressで特定のページのみサイドバーを表示しない

WordPressで特定のページのみサイドバーを表示しない

久々に WordPress ネタ。 というかメモに近いんですが、特定のページにだけサイドバーの一部を表示しない方法。

ここじゃないほうのブログで、ページに親カテゴリ、子カテゴリの一覧を作っていましたが、どうやらそのページがどこにあるのか分かりづらいらしく、ユーザビリティが悪いとのご指摘をメールで受けました。


Sponsored Link

それじゃちょっと修正するかと、サイドバーに親カテゴリだけの一覧を表示し、子カテゴリまで見たい場合は 「詳細カテゴリはこちら」 でカテゴリー一覧のページに飛んでもらうよう修正。

しかし、カテゴリ一覧のページを開くとサイドバーにも親カテゴリ一覧があるので、これじゃ何かカッコ悪い。 そこで以下のように修正。

サイドバーはウィジェット対応で、PHP Code が使えるものとする。

<?php if ( is_page('5')) { ?>
<?php } else{ ?>
<ul class="side-cate">
<li class="side2-title">Category</li>
<?php wp_list_categories('depth=1&title_li='); ?>
<p><a href="">詳細カテゴリはこちら</a></p>
</ul>
<?php } ?>

page(‘5′)はカテゴリー一覧のページ。 ID は WordPress のダシュボードで確認できます。

<?php wp_list_categories('depth=1&title_li='); ?>

↑は親カテゴリのみリスト表示。

一応これでページのカテゴリ一覧を開いたときには、サイドバーに親カテゴリ一覧を表示しません。 ただし、当然ですがソースを見ると以下のようになってます。

<div class="execphpwidget"></div>

空っぽね。 HTML の構文としては問題があるでしょうから、カテゴリ一覧ページを開いた際には何かを表示(広告とか)するようにしたほうが良いのでしょう。

初歩の分岐命令。 まぁ、取りあえずやっつけの修正なんでコレでよしとしときます :mrgreen:

Sponsored Link

コメントを残す