WordPress のタクソノミー周りのメモ
2022/02/28
一覧ページのテーブルに列を追加・カスタマイズ
- WordPress の管理画面でターム一覧をカスタマイズする方法 | Source Code EX
- WordPress:管理画面のカテゴリーやタクソノミー一覧ページにID(タームID)項目を追加する方法 - NxWorld
- WordPress管理画面のカテゴリー・タグの一覧テーブルにIDを表示する方法 | WEMO
表示処理
$wp_list_table->display(); でテーブルを出力している。
基底クラスのこの部分が該当処理。ただし汎用的な内容。
WP_Terms_List_Table
使用しているクラス
- WordPress/class-wp-terms-list-table.php at master ・ WordPress/WordPress ・ GitHub
- WP_Terms_List_Table::column_posts() | Method | WordPress Developer Resources
column_posts()メソッドがそれっぽい。が、引数の $tag に既に情報が入っているようなのでこの中ではない。
display_rows()メソッドでもない。
WP_Query
件数取得
found_postsプロパティ
wp_count_posts()
複雑な条件の件数となると WP_Query 一択。
$wpdb
タクソノミー→ターム
WP_Term_Query
- WordPressでカテゴリー・タグ・タクソノミーのタームを全取得して一覧表示する方法【WP_Term_Query / get_terms()】 | WEMO
- WP_Term_Query | Class | WordPress Developer Resources
- WordPress/class-wp-term-query.php at master · WordPress/WordPress · GitHub
countプロパティ はDBの値を読むだけ。逆に言えばDBに値が保存されていることが判明。
get_term()
タクソノミー操作系の目星
get_tax_sql()- 実際にテーブルを作っているクラス
タクソノミーやタームに関係ありそうなクラス
- WordPress/class-wp-tax-query.php at master · WordPress/WordPress · GitHub
- WordPress/class-wp-taxonomy.php at master · WordPress/WordPress · GitHub
- WP_Term | Class | WordPress Developer Resources
- WordPress/class-wp-term.php at master · WordPress/WordPress · GitHub
- Termのオブジェクト(ハコ)という感じ
- WordPress/class-wp-term.php at master · WordPress/WordPress · GitHub
get_taxonomies()
- get_taxonomies() | Function | WordPress Developer Resources
- [WordPress] サイト内のタームを全て一覧表示、投稿タイプごとにまとめるコード。サイドバーにどうぞ。
- 関数リファレンス/get taxonomies - WordPress Codex 日本語版
- WordPressでカテゴリー・タグ・タクソノミーのタームを全取得して一覧表示する方法【WP_Term_Query / get_terms()】 | WEMO
edit-tags.php ではビルトインのタクソノミーしか取得できなかった。が、GETパラメータでタクソノミー名が付いているのでそこから取得して WP_Term_Queryクラス に渡すことでここは無視。
その他
- [WordPress]Collapsing Categoriesで記事数を表示する時、非公開の記事までカウントされてしまう
- 特定プラグイン使用の状況
- プラグイン無しで全記事や特定のカテゴリの記事数を取得して表示させるスニペット | DUB DESiGN
備考
名前からは何をしているか分かりづらいが、ハズレ。
PHP
ヒアドキュメント
スコープ
GETパラメータ
filter_input(INPUT_GET, 'taxonomy', FILTER_SANITIZE_SPECIAL_CHARS) で取得できる。