我编写了一个PHP脚本来处理通过POST发送给它的文件。
在前端js脚本上,我创建了一个Formdata对象,并将图像附加到它... ...:
formdata.append('image0', image0);
formdata.append('image1', image1);
等
这是我的PHP代码,代码在wordpress根目录
<?php
header("Access-Control-Allow-Origin: *");
require_once('wp-admin/includes/image.php' );
require_once('wp-admin/includes/file.php' );
require_once('wp-admin/includes/media.php' );
$id_array = array();
$c = 0;
foreach ($_FILES as $file) {
$id_array[] = media_handle_upload('image' . $c, 0);
$c++;
}
echo implode(',', $id_array);
但是当我运行此代码时,我收到以下错误:
致命错误:在 16
/home/website/public_html/wp-admin/includes/file.php 中调用未定义的函数__() >我是否缺少在脚本中包含其他文件?我在wordpress上使用了文档,它说:
这些文件需要作为依赖项包含在前端。
require_once( ABSPATH . 'wp-admin/includes/image.php' );
require_once( ABSPATH . 'wp-admin/includes/file.php' );
require_once( ABSPATH . 'wp-admin/includes/media.php' );
我将不胜感激任何帮助!
答案 0 :(得分:2)
为了使用本机Wordpress功能,例如__()需要另外包含wp-config.php。
添加wp-config.php解决了问题
答案 1 :(得分:0)
我也面临同样的问题。 在functions.php中添加它将修复错误。 有时它会显示为“http错误”
add_filter( 'wp_image_editors', 'raj_change_graphic_library' );
function raj_change_graphic_library($array) {
return array( 'WP_Image_Editor_GD', 'WP_Image_Editor_Imagick' );
}