я использую SimplePie чтобы получить доступ этот канал. Я использую SimplePie’s get_permalink()
способ получить ссылку каждого элемента в ленте. Это работает с другими каналами, но с этим get_permalink()
возвращает URL канала в целом, а не URL конкретного элемента.
Код:
$feed = new Rss_lib();
$feed->set_feed_url($feed_array);
$success = $feed->init();
$feed->handle_content_type();
foreach($feed->get_items() as $item)
{
$item_arr = array(
'permalink' => $item->get_permalink(),
'title' => $item->get_title(),
'description' => $item->get_description(),
'date' => $item->get_date()
);
$return[] = $item_arr;
}
Я хочу получить постоянную ссылку на элемент, а не URL фида.
Похоже, что SimplePie имеет ошибку в отношении этого канала. Чтобы получить ссылку для элемента, вам просто нужно получить все ссылки, а затем выбрать ту, которая вам нужна. Для фида в вашем вопросе вторая ссылка — это ссылка, по которой вы переходите (в любом случае, используя мою версию SimplePie, разные версии могут анализировать ее по-разному).
$links = $item->get_links();
$link = $links[1];
Других решений пока нет …