• 赤色のリンクは、まだ日本語Codexに存在しないページ・画像です。英語版と併せてご覧ください。(詳細

このWikiはいつでも誰でも編集できます

関数リファレンス/wp handle upload

提供: WordPress Codex 日本語版
< 関数リファレンス
2017年8月4日 (金) 12:30時点におけるYAT (トーク | 投稿記録)による版 (ページの作成:「<div id="Description"> ==説明== </div> WordPressでPHPのアップロードを処理し、ファイル名をサニタイズし、MIMEタイプの拡張子をチェッ...」)

(差分) ← 古い版 | 最新版 (差分) | 新しい版 → (差分)
移動先: 案内検索

WordPressでPHPのアップロードを処理し、ファイル名をサニタイズし、MIMEタイプの拡張子をチェックし、ファイルをuploadsディレクトリ内の適切なディレクトリに移動します。

書き方

<?php wp_handle_upload( $file, $overrides, $time ); ?>

パラメータ

$file
配列) (必須) $_FILESの単一要素への参照。アップロードされたファイルごとに関数を1回呼び出します。参照渡しであるため、リテラルではなく変数を渡す必要があります。
初期値: なし
$overrides
配列) (オプション) デフォルトの振る舞いをオーバーライドする連想配列です。フォームの処理中に呼び出される action はフォームの action パラメータと一致するように設定する必要があり、そうでなければアップロードは拒否されます。フォームが処理されていない場合、
'test_form' => false
を使用してこのテストをバイパスし、 action をデフォルト以外の値 wp_handle_upload に設定することで、問題のファイルがユーザーのアップロードしたファイルであることを要求するセキュリティチェックを回避します。
初期値: false
$time
整数) (オプション) 時刻は「yyyy / mm」で表され、wp_upload_dir()/en に渡されます。
初期値: NULL

用例

if ( ! function_exists( 'wp_handle_upload' ) ) {
    require_once( ABSPATH . 'wp-admin/includes/file.php' );
}

$uploadedfile = $_FILES['file'];

$upload_overrides = array( 'test_form' => false );

$movefile = wp_handle_upload( $uploadedfile, $upload_overrides );

if ( $movefile && ! isset( $movefile['error'] ) ) {
    echo "File is valid, and was successfully uploaded.\n";
    var_dump( $movefile );
} else {
    /**
     * Error generated by _wp_handle_upload()
     * @see _wp_handle_upload() in wp-admin/includes/file.php
     */
    echo $movefile['error'];
}


戻り値

成功すると、ファイル属性の連想配列を返します。失敗すると $overrides['upload_error_handler'](&$file、$message) または配列 ( 'error' => $message)を返します。

成功時の戻り値:

file
(整数) アップロードされたファイルへのローカルパス
url
(整数) アップロードされたファイルのパブリックURL
type
(整数) MIMEタイプ

タイプとファイルを一緒に使用することができます wp_insert_attachment()/en

参考資料

ソースファイル

wp_handle_upload()wp-admin/includes/file.php にあります。


アップロード関数: media_handle_upload()/en, media_handle_sideload()/en, wp_handle_upload, wp_import_handle_upload()/en, wp_handle_sideload()/en, media_sideload_image()/en


関数リファレンステンプレートタグ目次もご覧ください。


最新英語版: WordPress Codex » Function Reference/wp_handle_upload