我需要一些幫助! :)前端媒體上傳WordPress的
我想要做的是讓用戶從前端創建一個帖子。預覽窗口顯示發佈後這篇文章的外觀。這我已經完成了。現在我試圖讓用戶直接將圖片上傳到媒體庫中。這需要上傳到只要用戶選擇的文件與後續的代碼發生:
<form method="post" action="#" enctype="multipart/form-data" >
<input type="file" name="featured_image">
</form>
我不希望任何頁面加載,有沒有辦法來獲取文件,而無需使用一個提交按鈕? 還有我該如何處理實際的文件上傳,我的谷歌技能發現這個功能:
function insert_attachment($file_handler,$post_id,$setthumb='false') {
// check to make sure its a successful upload
if ($_FILES[$file_handler]['error'] !== UPLOAD_ERR_OK) __return_false();
require_once(ABSPATH . "wp-admin" . '/includes/image.php');
require_once(ABSPATH . "wp-admin" . '/includes/file.php');
require_once(ABSPATH . "wp-admin" . '/includes/media.php');
$attach_id = media_handle_upload($file_handler, $post_id);
if ($setthumb) update_post_meta($post_id,'_thumbnail_id',$attach_id);
return $attach_id;
}
不過這個功能掛鉤上傳到帖子,我只是希望它直接進入庫,而無需連接到帖子。另外我假設$ file_handler是表單的名稱?我還假設$ _FILES不存在,除非用戶點擊了一個提交按鈕。
我很快就在這裏,說出我的屁股。所以任何幫助都會受到歡迎。任何WP-gurus可用? :D
因此,使用上面的代碼中,我得到它的在頁面r上工作最新,但我怎麼用ajax做到這一點?我需要上傳文件而不必刷新。發送一個$ .ajax請求到一個處理上述函數的php文件會產生錯誤,因爲它不能讀取$ _FILES數組,因爲它永遠不會被聲明。 – ninja 2012-02-07 09:41:57