0

ヘッダーに次のコードがあります。

        <?php if (has_nav_menu('sub-header-menu', 'responsive')) { ?>
            <?php wp_nav_menu(array(
                'container'       => '',
                'menu_class'      => 'sub-header-menu',
                'theme_location'  => 'sub-header-menu')
                ); 
            ?>
        <?php } ?>

そして、ブログページとそのページの子 (つまり、カテゴリ) にのみ表示されるようにするものが必要です..私は PHP が得意ではありませんが、これは単純なものになると思います.

4

2 に答える 2

0

ブログページの ID を$blogid = 123調べて (たとえば)、次のように確認します。if ($page->ID == $blogid) { /*show menu*/ }

于 2013-04-24T10:01:08.850 に答える
0

条件にブログページのページ ID を追加するだけです。

$parentPageId = is_subpage();
if (has_nav_menu('sub-header-menu', 'responsive') &&
   (is_page( $blogPageId ) || $parentPageId == $blogPageId))

slugを使用してページを確認することもできます。

is_page( 'blog' ) 

存在する場合、親ページ ID を取得する関数。

function is_subpage() {
    global $post;
    if ( is_page() && $post->post_parent ) {
        return $post->post_parent;
    } else {
        return false;
    }
}
于 2013-04-24T10:00:08.383 に答える