При просмотре предоставленной вами RSS-ленты не видно изображения сайта.Поэтому, если вам нужен логотип сайта, вам, возможно, придется статически связать его.
Если вы хотите получить изображение поста, мы можем это сделать.Вот что я хотел бы сделать.
Я создал пакет, чтобы сделать разбор xml легким.Вы можете найти его здесь: https://github.com/mtownsend5512/xml-to-array
Затем сделайте следующее:
$xml = \Mtownsend\XmlToArray\XmlToArray::convert(file_get_contents('https://www.idownloadblog.com/tag/jailbreak/feed/'));
Теперь у вас есть хороший массив php для RSS-канала.
Далее мысоздаст вспомогательную функцию, чтобы получить первое изображение из тела сообщения.Мы будем использовать это в качестве избранного изображения поста.
function getPostImage($content)
{
$output = preg_match_all('/<img[^>]+src=[\'"]([^\'"]+)[\'"][^>]*>/i', $content, $matches);
if (empty($matches[1][0])) {
return 'http://yoursite.com/images/fallback-image.jpg';
}
return $matches[1][0];
}
Вы захотите заменить http://yoursite.com/images/fallback-image.jpg
на URL вашего резервного изображения, если в посте нет изображения.
Теперь мы перебираем сообщения:
foreach ($xml['channel']['item'] as $post) {
$title = $post['title']);
$link = $post['link'];
$description = $post['description'];
$pubDate = $post['pubDate'];
$image = getPostImage($post["content:encoded"]);
}