Создаю пост , прикрепляю к нему картинку загруженную из внешнего источника и ставлю посту категорию, не понимаю почему функция wp_generate_attachment_metadata гонит на экран какие то знаки
, если картинку загрузить вручную и записать её в базу данный через wp_insert_attachment, такой проблемы нет
<?php
require_once(dirname(__FILE__) . '/wp-load.php');
require_once(ABSPATH . 'wp-admin/includes/image.php');
require_once(ABSPATH . 'wp-admin/includes/file.php');
require_once ABSPATH . 'wp-admin/includes/media.php';
// Создаем массив данных новой записи
$post_data = array(
'post_title' => 'заголовок работы',
'post_content' => '<strong>вторая тестовая страница</strong>',
'post_status' => 'publish',
'post_author' => 1,
'post_name' => 'vtoray-stranica',
'post_parent' => 0,
'post_type' => 'projects_post',
);
// Вставляем запись в базу данных
$post_id = wp_insert_post( $post_data ); // добавляю работу в таблицу wp_post
$url = 'http://www1.lobochkin.ru/111.JPG';
$description = "Картинка блока цилиндров";
$media_id = media_sideload_image( $url, $post_id, $description, 'id' );
if( is_wp_error($media_id) ){
echo $media_id->get_error_message();
}
var_dump($media_id);
$filename = $wpdb->get_var("SELECT guid FROM wp_posts WHERE id = $media_id");
$filetype = wp_check_filetype( basename( $filename ), null ); // получаю массив значений файла
$attach_data = wp_generate_attachment_metadata( $media_id, $filename ); // генирирую метаданные для мини картинки
wp_update_attachment_metadata( $media_id, $attach_data ); // обновляю или записываю метаданные в таблицу wp_postmeta со строкой _wp_attachment_metadata
set_post_thumbnail($post_id, $media_id);
$repair_engine = 39; // категория в таблице wp_term_taxonomy
$wpdb->query("insert into wp_term_relationships (object_id, term_taxonomy_id) VALUE ($post_id, $repair_engine)"); // добавляем категорию работе