WordPress3.0よりカスタムメニューという機能が追加された。これもテーマレビューで指摘されるまで気がつかなかった。カスタムメニューに対応しているテーマでは、管理画面の[外観]-[メニュー]でグローバルナビゲーションやサイドバーに表示するメニューを作成することができる。地味ながら「これは使える!」といいたい機能だ。
さてテーマでカスタムメニューに対応するには、after_setup_theme フックでメニュー登録を行う。例えばグローバルナビゲーションをカスタマイズしたい場合は、functions.php に以下を記述しておけばよい。
[sourcecode language=’php’]
function mysetup() {
register_nav_menus( array(
‘primary’ => ‘Primary Navigation’),
));
}
add_action( ‘after_setup_theme’, ‘mysetup’ );
[/sourcecode]
これで管理画面に「ご利用中のテーマは1個のメニューに対応しています。」と表示され、メニューの編集が可能となる。
作成したメニューはheader.phpなどで表示する。
[sourcecode language=’php’]
‘menu-header’, ‘theme_location’ => ‘primary’ ) ); ?>
[/sourcecode]
やりたいことがあるのですが、いろいろググっても出てきません。そこで、方向を変えて検索したところ、ここに辿り着きました。
カスタムメニューに、新着マーク(Newマーク)を表示できないでしょうか?また、カテゴリーリストにおいて新着を含むカテゴリーの横に新着マークを表示したい、というのもあります。
エントリーのタイトルを出力する箇所に表示することは、いろいろなTIPSを見てできるのですが、カスタムメニューやカテゴリーリスト(wp_list_gategories()関数など)のようにWordPressの機能の中で使いたいのですが、方法はないでしょうか?