Я создаю конечную точку WordPress REST с register_rest_route
и использую RSS-канал с другого веб-сайта в качестве данных для API REST.
Я использую WordPress 'fetch_feed
для полученияRSS-канал (который возвращает SimplePie и возвращает его обратно как объект JSON, используя следующий код:
plugin-file.php
dd_action('rest_api_init', function() {
register_rest_route('wp/v2', '/blog/', array(
'methods' => 'GET',
'callback' => 'ts_get_blog_feed'
) );
});
function ts_get_blog_feed() {
$pie = array_map(function ($item) {
return [
'id' => $item->get_id(),
'date' => $item->get_date(),
'content' => $item->get_content(),
'title' => $item->get_title(),
'link' => $item->get_permalink(),
'media' => $item->get_enclosure()->get_link(0)
];
}, fetch_feed('https://feed.com/feed.rss')->get_items(0, 150));
return $pie;
}
Объект JSONвсе в порядке, и я могу использовать его как обычно.
Однако URL-адрес мультимедиа (который должен быть ссылкой на изображение для сообщения блога) осуществляется через прокси-сервер мультимедиа. URL-адрес похож на приведенный ниже URL-адрес:
https://content.contentnetwork.com/mediaproxy?url=https://contentnetwork.com/files/aHViPTgwNTc2JmNtZD1pdGVtZWRpdG9yaW1hZ2UmZmlsZW5hbWU9aXRlbWVkaXRvcmltYWdlXzVkNWM1NTc5ZDIxODUuanBnJnZlcnNpb249MDAwMCZzaWc9MDk5Y2MwNzJmYjky3GM1YzQxNDA3MmI1ZmEwM2E4Yjc%253D&size=3&version=1571255955&sig=9828497b3a2d7fe01f2d3e06e22d3a6f&default=hubs/tilebg-blogs.jpg
Если я использую только строку от url = до первого &
, и я удаляю ее, тогда я могу получить доступ к изображению (см. URL ниже длядоступный URL), но это мне не очень помогает, потому что мне нужно напрямую извлечь этот URL из фида JSON и назначить его в качестве избранного изображения.
Рабочий URL
https://contentnetwork.com/files/aHViPTgwNTc2JmNtZD1pdGVtZWRpdG9yaW1hZ2UmZmlsZW5hbWU9aXRlbWVkaXRvcmltYWdlXzVkNWM1NTc5ZDIxODUuanBnJnZlcnNpb249MDAwMCZzaWc9MDk5Y2MwNzJmYjky3GM1YzQxNDA3MmI1ZmEwM2E4Yjc%253D
Как мне отредактировать строку с помощью php, чтобы получить точный URL-адрес, который мне нужен? здесь опция с fetch_feed
для возврата данных так, как мне нужно?
Цель состоит в том, чтобы получить URL-адрес изображения, чтобы он мог отображаться в теге <img src="" />
- простона случай, если мне неясно.