説明
get_allowed_mime_types() は、アップロードできるファイルの種類(拡張子とMIMEタイプ)の一覧を取得する関数です。
基本構文
get_allowed_mime_types( int|WP_User $user = null ): string[]
引数
$user:ユーザーのIDまたはオブジェクト(省略すると、現在のユーザー)
戻り値
「拡張子(正規表現)=> MIMEタイプ」の配列。
使い方(サンプル)
$mimes = get_allowed_mime_types();
if ( isset( $mimes['pdf'] ) ) {
// PDFが許可されている
}
注意点
- 配列のキーは、
jpg|jpeg|jpeのように、複数の拡張子を、正規表現で並べた形です。 - 一覧は、
upload_mimesフィルターで変更できます。
実務での使いどころ
- アップロードを受け付ける前に、許可された種類かを、確認するとき。
- 許可されている種類の一覧を、画面に表示するとき。
よくあるミスと対処
- 配列のキーを、1つの拡張子だと考えている(
jpg|jpeg|jpeの形)。 - 一覧を、自分で決め打ちしている。
NG例
if ( isset( $mimes['jpg'] ) ) { // キーは jpg|jpeg|jpe のため、一致しない
// ...
}
OK例
$type = wp_check_filetype( $name, get_allowed_mime_types() );
if ( $type['type'] ) {
// 許可された種類
}
使い分け早見表
| 関数 | 役割 |
|---|---|
get_allowed_mime_types() |
許可された種類の一覧を、返す |
wp_check_filetype() |
ファイル名から、MIMEタイプを判定する |
upload_mimes |
許可する種類を、変更するフィルター |
関連項目
wp_check_filetype()、wp_handle_upload()
公式リファレンス:get_allowed_mime_types() | WordPress Developer Resources

コメント