[РЕШЕНО] Сервис сокращения ссылок — Продолжение
Создал на вордпрессе сервис сокращения ссылок (Вот предыстория)
Как спарсить имя я нашел.
Вопрос:
Как спарсить картинку и установить её на пост в качестве миниатюры?
Решение:
// когда мы во фронте
require_once ABSPATH . 'wp-admin/includes/media.php';
require_once ABSPATH . 'wp-admin/includes/file.php';
require_once ABSPATH . 'wp-admin/includes/image.php';
$url = $matches_og_image_url; // <- спарсить из нужного тега нужный урл
$post_id = $post_id;
$desc = "Logo from original page.";
$img_tag = media_sideload_image( $url, $post_id, $desc );
if( is_wp_error($img_tag) ){
echo $img_tag->get_error_message();
}
else {
global $post;
// проверка на наличие миниатюры посте
if( has_post_thumbnail( $post_id) )
return;
$attached_image = get_children( array( 'post_parent'=> $post_id, 'post_type'=>'attachment', 'post_mime_type'=>'image', 'numberposts'=>1 ) );
// делаем условие проверку на наличие картинки
if( $attached_image ){
foreach ($attached_image as $attachment_id => $attachment)
set_post_thumbnail( $post_id, $attachment_id);
}
}