0
我在WordPress中有一個處理文件上傳到WordPress圖片庫的功能。將表單轉換爲Ajax後,我意識到文件上傳不再有效。事情是,如果我可以在Ajax之前執行該函數就可以運行。下面是代碼:在Ajax提交之前執行一行PHP
function insert_attachment($file_handler,$post_id,$setthumb='false') {
if ($_FILES[$file_handler]['error'] !== UPLOAD_ERR_OK){
return __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;
}
,這裏是我想執行的Ajax提交調用之前調用:
foreach ($_FILES as $file => $array)
{
$newupload = insert_attachment($file,$post_id);
}
的原因是$newupload
文件發送到WordPress的圖像畫廊,然後返回attachmentID
以插入到Ajax插入到的同一個表中。所以,如果代碼可以在Ajax之前運行,那麼它可以正常工作。這可能嗎?
如何在點擊後臺運行PHP函數?
我該怎麼辦,如果沒有用戶按下按鈕兩次? –
請參閱上面的示例在按鈕單擊時調用第一個ajax。 – dev