質問: $wp_query->post->post_parent; } if(wp_list_pages("title_li=&child_of=$parent&echo=0" )) { ?> <ul id="subnav"> <?php wp_list_pages("title_li=&child_of=$parent&echo=1" ); ?> </ul> <?php } } 私はどこに迷いますか?
回答: 編集:私はbuddypressフォーラムで人々から直接、簡単な答えを受け取りました:ブール値を返すbp_current_component()というテンプレートタグがあります。つまり、現在、サイトのbuddypress対応のセクションにいるかどうかを確認するために、単に次のように呼び出します。if( bp_current_component() ){ ...または、buddypressエリアにいないことを検出したい場合は、その逆になります。if( !bp_current_component() ){ 簡単です。したがって、全体として、コードは次のようになります。if( !bp_current_component() ){ if ( is_page() ) { if( empty( $wp_query->post->post_parent ) ) { $parent = $wp_query->post->id; } else { $parent = $wp_query->post->post_parent; } if( wp_list_pages( "title_li=&child_of=$parent&echo=0" ) ) { echo '<ul id="subnav">'; wp_list_pages( "title_li=&child_of=$parent&echo=1" ); echo '</ul>'; } } } else { echo '<ul id="subnav">'; if ( is_user_logged_in() ){ bp_get_loggedin_user_nav(); } else { bp_get_displayed_user_nav(); } echo '</ul>'; }