Код для загрузки изображения на сайт wordpress.
function upload_image($file, $post_id) {
require_once('../wp-admin/includes/image.php');
require_once('../wp-admin/includes/file.php');
require_once('../wp-admin/includes/media.php');
//require_once(ABSPATH . 'wp-admin/includes/media.php');
//require_once(ABSPATH . 'wp-admin/includes/file.php');
//require_once(ABSPATH . 'wp-admin/includes/image.php');
// upload image to server
media_sideload_image($file['url'], $post_id);
// get the newly uploaded image
$attachments = get_posts( array(
'post_type' => 'attachment',
'number_posts' => 1,
'post_status' => null,
'post_parent' => $post_id,
'orderby' => 'post_date',
'order' => 'DESC',)
);
// returns the id of the image
return $attachments[0]->ID;
}
$result1 = attach_image_url('http://www.americanmattress.com/media/catalog/product/cache/1/image/9df78eab33525d08d6e5fb8d27136e95/p/a/parmelee_fm2.jpg','0');
print_r($result1);
Вот в чем проблема:
- Функция находится в RootWPFolder / Somefolder / ThisFunction.php
- Необходимые файлы находятся в RootWPFolder / wp-admin / includes / file.php
Я получаю следующую ошибку:
Неустранимая ошибка: require_once (): не удалось открыть 'ABSPATHwp-admin / includes / media.php' (include_path = '.: / Opt / alt / php54 / usr / share / pear: / opt / alt / php54 / usr / share / php ')
file.php
загружается, но неmedia.php
? Похоже, чтоmedia.php
находится не в том месте, потому что носитель находится после файла, как вы его включили - person Drakes   schedule 20.04.2015define( 'ABSPATH', dirname(__FILE__) . '/' );
. Если да, то используйте свои строки комментариев. - person Drakes   schedule 20.04.2015