当サイト、Codex 日本語版は今後積極的な更新は行わない予定です。後継となる新ユーザーマニュアルは、https://ja.wordpress.org/support/ にあります。
万が一、当サイトで重大な問題を発見した際などは、フォーラムWordSlack #docs チャンネルでお知らせください。</p>

「関数リファレンス/media handle upload」の版間の差分

提供: WordPress Codex 日本語版
移動先: 案内検索
(en:Function_Reference/media_handle_upload 13:52, 12 April 2014 Jdgrimes 版を流し込み。)
 
(和訳完了。)
 
1行目: 1行目:
{{NeedTrans}}
+
{{CheckTrans}}
== Description ==
+
  
This function handles the file upload POST request itself, and creates the attachment post in the database.
+
== 説明<span id="Description"></span> ==
  
== Usage ==
+
この関数はファイルをアップロードする POST リクエストを処理して、添付ファイル(の投稿 - attachment post)をデータベースに作成します。
 +
 
 +
== 使い方<span id="Usage"></span> ==
  
 
  <?php media_handle_upload( $file_id, $post_id, $post_data, $overrides ); ?>
 
  <?php media_handle_upload( $file_id, $post_id, $post_data, $overrides ); ?>
  
== Parameters ==
+
== パラメータ<span id="Parameters"></span> ==
  
{{Parameter|$file_id|string|Index into the [http://www.php.net/manual/en/reserved.variables.files.php $_FILES] array of the upload|required}}
+
{{Parameter|$file_id|文字列|POST メソッドでアップロードされた項目の連想配列 [http://www.php.net/manual/en/reserved.variables.files.php $_FILES] に対するインデックス|必須}}
  
{{Parameter|$post_id|int|The post ID the media is associated with. If you don't want this media attached to a specific post, you can pass 0.|required}}
+
{{Parameter|$post_id|整数|メディアを関連づける投稿の ID。投稿に関連づけたくなければ 0 を指定する|必須}}
  
{{Parameter|$post_data|array|allows you to overwrite some of the attachment|optional|array()}}
+
{{Parameter|$post_data|配列|このパラメータを使って添付ファイル(の投稿)を上書きできます|オプション|array()}}
  
{{Parameter|$overrides|array|allows you to override the <tt>[[関数リファレンス/wp_handle_upload | wp_handle_upload()]]</tt> behavior|optional|array( 'test_form' &#61;> false )}}
+
{{Parameter|$overrides|配列|このパラメータを使って <tt>[[関数リファレンス/wp_handle_upload | wp_handle_upload()]]</tt> の動作を変更できます|オプション|array( 'test_form' &#61;> false )}}
  
== Return Values ==
+
== 戻り値<span id="Return_Values"></span> ==
  
{{Return||int&#124;WP_Error|The ID of the attachment, or a <tt>[[クラスリファレンス/WP_Error | WP_Error]]</tt> if the upload failed.}}
+
{{Return||整数&#124;WP_Error|添付ファイルの ID。アップロードに失敗すると <tt>[[クラスリファレンス/WP_Error | WP_Error]]</tt>}}
  
== Examples ==
+
== 用例<span id="Examples"></span> ==
  
Upload an attachment from a form on the front end of the site.
+
サイトのフロントエンドに表示したフォームから添付ファイルをアップロードする例です。
  
The upload form might look like this:
+
アップロードのフォームは次のようになるでしょう:
  
 
<pre>
 
<pre>
37行目: 38行目:
 
</pre>
 
</pre>
  
The code to save the attachment:
+
添付ファイルを保存するコードは:
  
 
<pre>
 
<pre>
 
<?php
 
<?php
  
// Check that the nonce is valid, and the user can edit this post.
+
// nonce が有効で、ユーザーがこの投稿を編集可能であるかチェック。
 
if (  
 
if (  
 
isset( $_POST['my_image_upload_nonce'], $_POST['post_id'] )  
 
isset( $_POST['my_image_upload_nonce'], $_POST['post_id'] )  
48行目: 49行目:
 
&& current_user_can( 'edit_post', $_POST['post_id'] )
 
&& current_user_can( 'edit_post', $_POST['post_id'] )
 
) {
 
) {
// The nonce was valid and the user has the capabilities, it is safe to continue.
+
// nonce が有効で、ユーザーが権限を持つので、続けて大丈夫。
  
// These files need to be included as dependencies when on the front end.
+
// 下記のファイルに依存するのでフロントエンドではインクルードする必要がある。
 
require_once( ABSPATH . 'wp-admin/includes/image.php' );
 
require_once( ABSPATH . 'wp-admin/includes/image.php' );
 
require_once( ABSPATH . 'wp-admin/includes/file.php' );
 
require_once( ABSPATH . 'wp-admin/includes/file.php' );
 
require_once( ABSPATH . 'wp-admin/includes/media.php' );
 
require_once( ABSPATH . 'wp-admin/includes/media.php' );
 
 
// Let WordPress handle the upload.
+
// WordPress にアップロードを処理させる。
// Remember, 'my_image_upload' is the name of our file input in our form above.
+
// 注意: 'my_image_upload' は上のフォームで file input 要素の name 属性。
 
$attachment_id = media_handle_upload( 'my_image_upload', $_POST['post_id'] );
 
$attachment_id = media_handle_upload( 'my_image_upload', $_POST['post_id'] );
 
 
 
if ( is_wp_error( $attachment_id ) ) {
 
if ( is_wp_error( $attachment_id ) ) {
// There was an error uploading the image.
+
// 画像のアップロード中にエラーが起きた。
 
} else {
 
} else {
// The image was uploaded successfully!
+
// 画像のアップロードに成功 !
 
}
 
}
  
 
} else {
 
} else {
  
// The security check failed, maybe show the user an error.
+
// セキュリティチェック失敗、例えばユーザーにエラーを提示。
 
}
 
}
 
</pre>
 
</pre>
  
== Change Log ==
+
== 変更履歴<span id="Change_Log"></span> ==
  
Since: [[Version 2.5|2.5]]
+
新規導入: [[Version 2.5|2.5]]
  
== Source File ==
+
== ソースファイル<span id="Source_File"></span> ==
  
<tt>media_handle_upload()</tt> is located in {{Trac|wp-admin/includes/media.php}}
+
<tt>media_handle_upload()</tt> {{Trac|wp-admin/includes/media.php}} にあります。
  
== Related ==
+
== 関連項目<span id="Related"></span> ==
  
 
{{Upload Tags}}
 
{{Upload Tags}}

2018年5月4日 (金) 12:53時点における最新版

この項目「関数リファレンス/media handle upload」は、翻訳チェック待ちの項目です。加筆、訂正などを通して、Codex ドキュメンテーションにご協力下さい。

説明

この関数はファイルをアップロードする POST リクエストを処理して、添付ファイル(の投稿 - attachment post)をデータベースに作成します。

使い方

<?php media_handle_upload( $file_id, $post_id, $post_data, $overrides ); ?>

パラメータ

$file_id
文字列) (必須) POST メソッドでアップロードされた項目の連想配列 $_FILES に対するインデックス
初期値: なし
$post_id
整数) (必須) メディアを関連づける投稿の ID。投稿に関連づけたくなければ 0 を指定する
初期値: なし
$post_data
配列) (オプション) このパラメータを使って添付ファイル(の投稿)を上書きできます
初期値: array()
$overrides
配列) (オプション) このパラメータを使って wp_handle_upload() の動作を変更できます
初期値: array( 'test_form' => false )

戻り値

(整数|WP_Error) 
添付ファイルの ID。アップロードに失敗すると WP_Error

用例

サイトのフロントエンドに表示したフォームから添付ファイルをアップロードする例です。

アップロードのフォームは次のようになるでしょう:

<form id="featured_upload" method="post" action="#" enctype="multipart/form-data">
	<input type="file" name="my_image_upload" id="my_image_upload"  multiple="false" />
	<input type="hidden" name="post_id" id="post_id" value="55" />
	<?php wp_nonce_field( 'my_image_upload', 'my_image_upload_nonce' ); ?>
	<input id="submit_my_image_upload" name="submit_my_image_upload" type="submit" value="Upload" />
</form>

添付ファイルを保存するコードは:

<?php

// nonce が有効で、ユーザーがこの投稿を編集可能であるかチェック。
if ( 
	isset( $_POST['my_image_upload_nonce'], $_POST['post_id'] ) 
	&& wp_verify_nonce( $_POST['my_image_upload_nonce'], 'my_image_upload' )
	&& current_user_can( 'edit_post', $_POST['post_id'] )
) {
	// nonce が有効で、ユーザーが権限を持つので、続けて大丈夫。

	// 下記のファイルに依存するのでフロントエンドではインクルードする必要がある。
	require_once( ABSPATH . 'wp-admin/includes/image.php' );
	require_once( ABSPATH . 'wp-admin/includes/file.php' );
	require_once( ABSPATH . 'wp-admin/includes/media.php' );
	
	// WordPress にアップロードを処理させる。
	// 注意: 'my_image_upload' は上のフォームで file input 要素の name 属性。
	$attachment_id = media_handle_upload( 'my_image_upload', $_POST['post_id'] );
	
	if ( is_wp_error( $attachment_id ) ) {
		// 画像のアップロード中にエラーが起きた。
	} else {
		// 画像のアップロードに成功 !
	}

} else {

	// セキュリティチェック失敗、例えばユーザーにエラーを提示。
}

変更履歴

新規導入: 2.5

ソースファイル

media_handle_upload()wp-admin/includes/media.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


添付ファイル関数: get_children(), get attached media(), the_attachment_link(), get_attachment_link(), wp_get_attachment_link(), wp_get_attachment_image(), wp_get_attachment_image_src(), wp_get_attachment_url(), wp_get_attachment_thumb_file(), wp_get_attachment_thumb_url(), is_attachment(), wp_get_attachment_metadata()



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


最新英語版: WordPress Codex » Function Reference/media_handle_upload最新版との差分