How can I call $attach_id
from outside of a function?
function kv_handle_attachment($file_handler, $post_id, $set_thu = 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);
return $attach_id;
}
echo $attach_id;
when you get value from function then you need to call this function this is your code, this is demo code which return 12
<?php
function kv_handle_attachment($file_handler, $post_id)
{
return 12;
}
$attach_id = kv_handle_attachment('1', 12);
echo $attach_id;
so update your code like this
<?php
function kv_handle_attachment($file_handler, $post_id, $set_thu = 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);
return $attach_id;
}
so call your function
$attach_id = kv_handle_attachment($file_handler, $post_id);
or this is more clear option
$attach_id = kv_handle_attachment($yourdatahere); //$yourdatahere update as your parameter which you need to send but your first 2 parameter is required so need to send this must but not empty
echo $attach_id;
You can use a global variable.
function kv_handle_attachment($file_handler,$post_id,$set_thu=false) {
global $attach_id;
// 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 );
return $attach_id;
}
global $attach_id;
echo $attach_id;
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.