タクソノミーの一覧をショートコードで編集・ソート機能付き・wp_list_categories
2016/03/11
カスタムタクソノミーのターム一覧の作成方法
カスタムタクソノミーのターム一覧をショートコードで編集・まえがき
カスタムタクソノミーのターム一覧をウィジェットにショートコードで編集するプログラムを「カスタムタクソノミーのターム一覧をウィジェットにショートコードで編集」で紹介しました。
これを書いた時にはまだローカルで実験をしている段階でしたので、これでよかったのですが、実際に運用するにあたってはタクソノミーを任意の順番に並び替える必要に迫られましたので、並び順を自由に変えられる方法を採ることにしました。
「カスタムタクソノミーのターム一覧をウィジェットにショートコードで編集」に追記をしようかと思いましたが、多様な方法があるために別記事にしました。
カスタムタクソノミーを並び替える・Category Order and Taxonomy Terms Order
カスタムタクソノミーを自由に並び替えて表示する前提として、カスタムタクソノミーのタームを管理側で並び順を指定する方法として、プラグインの Category Order and Taxonomy Terms Orderを利用しています。
この Category Order and Taxonomy Terms Orderで並び替えたカテゴリやタクソノミーのタームを一覧表示します。
Category Order and Taxonomy Terms Orderの使い方については「Category Order and Taxonomy Terms Orderでカテゴリ・タクソノミーのタームの順番を並び替える」に記事を書いていますので参照してください。
カスタムタクソノミーのターム一覧を表示するショートコード
カスタムタクソノミーの一覧表示するソースコード
カスタムタクソノミーのターム一覧をウィジェットに編集するために必要なショートコードのソースコードは以下の通りです。
これを functions.phpにコピペします。
functions.phpの詳しい解説ついては「WordPressの functions.phpがある場所」を参照してください。
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
add_filter('widget_text', 'do_shortcode' ); // サイドバーに指定のタクソノミーを表示するショートカット2 function shortcodeFunc ( $arg ) { extract ( shortcode_atts ( array ( 'text' => 'category', ), $arg ) ); $html = ""; $html .= '<div id="mybox">'; $html .= wp_list_categories ( array ( 'title_li' => '', 'taxonomy' => $text, 'show_count' => 1, 'style' => false, 'depth' => 0, 'echo' => false, 'orderby' => 'term_order', 'order' => 'ASC' )); $html .= '</div>'; return $html; } add_shortcode('get_taxonomy_term_list', 'shortcodeFunc'); |
また、ウィジェットに編集するショートコードは、下記の様になります。
|
1 |
[get_taxonomy_list text=s_taxonomy] |
引数として「text」でカスタムタクソノミーの「slug」を指定します。
「text」の指定がない場合は、「category」が指定されたものとして処理されます(カスタムタクソノミーではなく、デフォルトのカテゴリーの一覧が表示されます)。
カスタムタクソノミーの一覧・wp_list_categories()関数の解説
wp_list_categories()関数の解説に関しては、「カスタムタクソノミーのターム一覧をウィジェットにショートコードで編集」に詳しく書いていますので参考にしてください。
今回はソート順を指定するという処理を追加していますので、wp_list_categories()関数に指定する配列に下記の項目を追加しています。
|
1 2 |
'orderby' => 'term_order' 'order' => 'ASC' |
このうち「term_order」が、プラグイン「Category Order and Taxonomy Terms Order」で設定される並び順の項目です。
この「term_order」をキーとして設定すれば OKです。
また、「Category Order and Taxonomy Terms Orderでカテゴリ・タクソノミーのタームの順番を並び替える」の設定画面の「自動ソート」という項目を「オン」にしておくと、この「term_order」をソートキーとして指定しなくても常に「term_order」でソートされた状態で取得されます。
逆に「オン」になっていても、orderby、order項目でソート条件を指定することで指定したソート条件でソートすることができます。
カスタムタクソノミーのタームを取得する関数
カテゴリやカスタムタクソノミーのターム一覧を作成する場合は、今回の記事で紹介した wp_list_categories()関数が便利です。
ですが、wp_list_categories()関数は、一覧表示するためにレイアウトを整えた形式で取得できますので、自由な編集が行いにくいのも事実です。
そんなときは、値だけを取得するget_categories()関数、get_terms()関数などがあります。
こちらの関数に関しては「get_categories、get_termsでカテゴリとタクソノミーのターム一覧の編集方法」に記事をまとめましたので参考にしてください。
GoogleAdwords
GoogleAdwords
この記事が参考になったと思いましたらソーシャルメディアで共有していただけると嬉しいです!
関連記事
-
-
WordPressでダブルクォートなどの文字が自動変換?原因と対処方法
ダブルクォート、シングルクォート、HTMLタグなどが自動変換関数によって入力と違う形で表示されます。原因を2つの関数ごとに説明し、対応方法を3パターン提示します。
-
-
Smart Update PingerでWordPressのPing・更新情報サービスを拡張する
WordPressの Ping機能、更新情報サービスのプラグイン Smart Update Pingerの使い方と問題点。
-
-
Broken Link Checkerのリンク生死チェックでサイトの品質向上!SEO対策!
Broken Link Checkerは記事内のリンクのリンク切れチェックをし自動的にリンク切れの対処をします。リンク切れは一覧表示されますので手動での処置も可能です。
-
-
ショートコード+ウィジェットでサイドバーに人気記事を表示させる方法
WordPressのサイドナビゲーションに人気記事を編集する方法です。プラグインを使わずウィジェットにショートコードで任意のPostIDを指定することで編集する方法です。
-
-
Rating-Widgetは超簡単設定のWordPress口コミサイト構築プラグイン
口コミの評価点を投稿する機能に特化したプラグインで、多様なイメージの投稿方法や一覧ページ、コメントなどにも投稿機能を追加することができます。
-
-
Google Code Prettifyの設定方法を解説。 Syntax Highlighterから乗換え、高速化にも最適
Google Code Prettifyでソースコードをきれいに編集する方法の解説。簡単設置とカスタマイズ設置の2つの方法を解説し、カスタマイズするポイントも解説。
-
-
WordPressのおすすめの確認画面付きお問い合わせフォームプラグイン・MW WP Form
MW WP Formは確認画面が付いているオススメのフォームプラグインです。企業サイトを CMSとして構築する際にも利用できる実力派です。
-
-
自サイト内のリンクをショートコードで指定する・アンカーリンク対応版
自サイト内の記事にショートコードで自動リンクを設定する関数のソースコードを提供。Post ID、slugで指定でき、アンカーリンクを設定する場合も対応。
-
-
シンタックスハイライトの5システム比較のまとめ・WordPressでも使える
シンタックスハイライト5種の比較検討のまとめ記事。WordPressで使う目的だがプラグインの比較検討ではないのでどのサイトでも導入可能。
-
-
WordPressのおすすめプラグイン記事のまとめ一覧
WordPressプラグインのまとめ。WordPressのプラグイン紹介記事も多くなってきたため紹介コメント付のプラグインまとめ記事を作成しました。