私は自分のサイトにURLでアクセスできるページを作成する必要がありますが、それは私のサイトのwp_list_pages()
を使って生成されるナビゲーションメニューには含まれません。
どうすればこれを達成できますか?
他のオプションはwp_list_pagesから新しいカスタムメニューに変換することです。カスタムメニューを使用すると、メニューに追加したページだけが含まれます。
運がいいです、フィルターがあります。 wp_list_pages()
内の この行 を参照してください。
$r['exclude'] = implode( ',', apply_filters('wp_list_pages_excludes', $exclude_array) );
それで、単にwp_list_pages_excludes
にフックしてください:
// add some new page ids to the exclude list
function my_banned_pages( $exclude_array ) {
return array_merge( $exclude_array, array( 12, 45 ) );
}
add_filter( 'wp_list_pages_excludes', 'my_banned_pages' );
単にwp_list_pages関数呼び出しにフラグを渡すだけです。あなたがする必要があるのはあなたが除外したいページIDを取得することだけです。下記のコーデックスページの例を参照してください。 http://codex.wordpress.org/Function_Reference/wp_list_pages#Exclude_Pages_from_List