ページリストの階層を維持してドロップダウンで表示する方法

やりたいこと

保存してある固定ページをプルダウンで階層を維持してインデントし、表示順を反映するようにしたい。

テンプレートタグ

<?php wp_dropdown_pages('arguments'); ?>

コード

<?php
$args = array(
 'name'        => 'ドロップダウンの name', // ドロップダウンの name を設定
 'selected'    => '該当する ID', // 該当する ID のページを「selected」にし、そのページが選択された状態にする
 'sort_column' => 'menu_order', // 固定ページの順序でソート
 'sort_order'  => 'ASC', // 昇順 (最小から最大へ)
 'post_status' => 'publish,private', // 公開と非公開の記事を取得
 );
 wp_dropdown_pages( $args ); // ページのリストのセレクトボックス (つまり、ドロップダウン) を表示する関数
?>

パラメータ

get_pages() ファンクションにあるいくつかのパラメータを wp_dropdown_pages() でも使うことができます。

'sort_column' => 'menu_order', // 固定ページの順序でソート
'sort_order' => 'ASC', // 昇順 (最小から最大へ)

この2つのパラメータを指定することで固定ページの順序でソートしています。

詳細はCodexも参照ください。

wp_dropdown_pages() について

パラメータに関しては、上記ページに記載は少ないので、併せて get_pages() のページも御覧ください。

get_pages() について


wp_dropdown_pages() を使うととても簡単に階層を維持したドロップダウンリストを作成することができました。

ループさせたりしなくていいので、コード自体もスッキリします。

Author Profile

石川栄和代表取締役
名古屋のウェブ制作会社数社に10年程度務めた後、株式会社ベクトル設立。
企画・運営・コンサルティング〜WordPressを中心としたシステム開発まで幅広く携わる。
[ 著書 ]
・いちばんやさいいWordPressの教本(共著)
・現場でかならず使われているWordPressデザインのメソッド(共著)
[ 最近のWordPressコミュニティでの活動 ]
2017 WordCampKyoto セッションスピーカー
2016 WordCampTokyo LT
2016 WordCampKansai ハンズオン世話役
2015 WordCampTokyo セッションスピーカー
2015 WordCampKansai セッションスピーカー
2014 WordFesNagoya 実行委員 & セッションスピーカー
2013 WordCampTokyo セッションスピーカー(パネラー)
2013 WordFesNagoya 実行委員 & セッションスピーカー
2013 WordCrabFukui セッションスピーカー

シンプルでカスタマイズしやすいWordPressテーマ

※このエリアは多機能プラグイン「VK All in One Expansion Unit」で一括挿入しています。投稿タイプ毎または記事毎に表示内容を変更する事も可能です。

Lightningは twitter Bootstrap ベースのシンプルでカスタマイズしやすいWordPressテーマです。
プラグイン VK All in One Expansion Unit とセットで使う事でビジネスサイトにもブログにも活用できます。