説明
array get_post_types( [ array $args = array() [ , string $output = 'names' [ , string $operator = 'and' ] ] ] )
投稿タイプ情報を列挙する。
パラメータ
- $args絞り込み条件を文字列または連想配列で指定。
- $output出力形式として'names'または'objects'を指定(省略時は'names')。
- $operator操作方法として'and'、'or'、'not'を指定(省略時は'and')。
返り値
投稿タイプ情報の連想配列を返す。キーは投稿タイプ名、値の内容はパラメータ$outputが'names'の場合は投稿タイプ名、'objects'の場合は投稿タイプ情報のオブジェクト( get_post_type_object関数と同じ)となる。注意
パラメータ$outputは'names'以外が指定された場合は'objects'となる。
パラメータ$operatorは$argsが指定された場合のみ機能する。詳しくはwp_list_filter関数を参照。
使用例
- 投稿タイプ名を列挙する。<?php $post_types = get_post_types(); ?>
- 公開している投稿タイプ情報を列挙する。<?php $post_types = get_post_types( array( 'public'=>true ), '' ); ?>
- revision以外の投稿タイプ名を列挙する。<?php $post_types = get_post_types( array( 'name'=>'revision' ), 'names', 'not' ); ?>
フィルター
直接実行するフィルターはありません。アクション
直接実行するアクションはありません。ソースファイル
/wp-includes/post.php最終更新 : 2017年03月06日 10:05
関連
お勧め
プラグインのロード順を制御する(2014年6月9日 更新)
これまでプラグインがどのような順番でロードされるか意識していなかったのだが、とある自作プラグインを他のプラグインよりも先にロードさせたくなったので調べてみた。
Emojin:プラグイン作ってみました(2015年3月21日 更新)
ちょっと前のTLでiOSの絵文字を含んだ投稿を保存すると、絵文字以降の文章がすべて消えた状態で保存されるといったツイートを見かけた。少し検索してみると、MySQLのデータベースの文字セットが「utf8」の場合、iOSの絵文字のような4バイトの文字を正常に保存できず、それ以降の文章も保存されないというものらしい。対処方法としてデータベースの文字セットを「utf8mb4」に変更するのが有効らしいのだが、他に回避策がないか考えてみた。Contact Form 7に確認フェーズを(2012年12月16日 更新)
Contact Form 7はWordPressによるサイト製作でお世話になることが多いプラグインの1つ。ただ、クライアント様によっては、入力、確認、送信の3フェーズにしたいという要望があり、そんな時は別の方法を採用していたのですが、JavaScript(jQuery)を使ってページ遷移しなくてもいいなら確認フェーズは用意できるかなと思い、作り込んでみた。プラグインのヘッダー情報を国際化対応しよう(2018年5月27日 更新)
バージョン4.8がリリースされてひと段落。あらためてプラグイン一覧ページを見てみると「Akismet」が「Akismet Anti-Spam (アンチスパム)」と表示されていた。説明文だけじゃなくプラグイン名も国際化対応できたのね。
メタボックスをクラシックエディターのみで表示する(2019年1月15日 更新)
投稿画面向けにメタボックスを使ったプラグインがあり、それがブロックエディターで意図した通りに機能しなかった。この対処方法を考える過程でエディタータイプに応じてメタボックスを出し分けできる方法が見つかったので紹介したい。