カテゴリーの並び替えにはカスタムメニューのデータを利用する

WordPress3.0から追加された「カスタムメニュー」の機能はとても使い易いです。

当ホームページでも既にヘッダー、サイドバー、フッターに組み込んでいます。(組み込むほどのメニューも無いのですが…)

さて、そんなカスタムメニューの機能を利用して作成されたメニューのデータを他で利用したい場合は、以下の関数で取得出来るみたいです。

wp_get_nav_menu_items(ID)

IDはメニューIDです。

これでカスタムメニューで設定した項目のデータが配列で取得できますので、後は下記のようにforやforeachを利用すればお望みのデータが取得出来ます。

[php]
<?php
$menu_items = wp_get_nav_menu_items(‘header-menu’);
foreach($menu_items as $menu) :
echo ‘[title] ‘ . $menu->title . ‘ (ID: ‘. $menu->object_id . ‘)<br />’;
endforeach;
?>
[/php]

調べるキッカケは「自分の好きな順序でカテゴリーを並べたカスタムメニューを利用したい」という要望でした。現状、プラグインか何かを導入する以外にカテゴリーを上手く並べ替えられないので、「わざわざプラグインを入れるのはしんどい」という人にとってはそれも有用な使い方かな、と思います。