WordPressのプラグインでファイルアップロード機能を作成しようとしています.1つのファイルをアップロードして後でサムネイルとして表示します。コード私はこのようなルックスを使用:wp_handle_uploadは画像ごとに複数のサイズをアップロードします
$file_return = wp_handle_upload($logo, array('test_form' => false));
if (isset($file_return['error']) || isset($file_return['upload_error_handler'])) {
return false;
} else {
$filename = $file_return['file'];
$attachment = array(
'post_mime_type' => $file_return['type'],
'post_title' => preg_replace('/\.[^.]+$/', '', basename($filename)),
'post_content' => '',
'post_status' => 'inherit',
'guid' => $file_return['url']
);
$attachment_id = wp_insert_attachment($attachment, $file_return['file']);
$attachment_data = wp_generate_attachment_metadata($attachment_id, $filename);
wp_update_attachment_metadata($attachment_id, $attachment_data);
if (0 < intval($attachment_id)) {
return $attachment_id;
}
}
とHTMLは単純です:
<form ...>
<input type='file' name='logo-upload' id='logo-upload'>
</form>
また、AJAXを通じてロゴをアップロードするためのJS:(jqueryの)
var formData = new FormData();
var logo = $('#logo-upload')[0].files[0];
formData.append('logo', logo);
$.ajax({
method: 'POST',
url: '...',
processData: false,
contentType: false,
data: formData
}).done(function (data) {
alert('uploaded!');
alert(data);
});
これは、すべてのコードではありませんが、私はそれがすべて関連していると信じています。
image.png
image-150x150.png
image-300x179.png
image-410x121.png
...
私はワードプレスを知っているが、デフォルトでこれを行います。 問題はここに名前を言うimage.png
でアップロードされ、その代わりに、1つのファイルのみですが、私はこれを取得しますしかし、これを回避する方法はありますか?