Код за качване на изображение в сайта на 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