Агрегатная функция img url не работает с одним блогом, созданным блоггером

Я пытаюсь объединить последние сообщения по нескольким блогам, используя их RSS-канал. Приведенный ниже код работает нормально для большинства платформ, включая blogg.se. Хотя это странно не работает с блогом из blogg.se под названием, http://sofiasinredning.blogg.se/index.rss .

  function wpse_187819_get_feed_html( $url, $bloggauthor ) {
if ( !is_admin() ) {
if ( is_wp_error( $rss = fetch_feed( $url ) ) )
return;

$maxitems  = $rss->get_item_quantity( 1 );
$rss_items = $rss->get_items( 0, $maxitems );

$html = '<ul class="rss-items rss-old" id="wows-feeds">';
if (!empty($bloggauthor)) {
$authorcredit = '<span class="field-label">' . $bloggauthor . '</span>';
} else { $authorcredit = '<span class="field-label"> Name </span>';}

if ( $maxitems ) {
foreach ( $rss_items as $item ) {
$title     = esc_attr( $item->get_title() );
$link      = esc_url( $item->get_permalink() );
$stringses = $item-> get_description();
global $wp_query;
$lengthses = '';
if ( $wp_query->is_page ) {
$lengthses = '100';
} elseif ( $wp_query->is_home ) {
$lengthses = '100';
} elseif ( $wp_query->is_single ) {
$lengthses = '700';
} elseif ( $wp_query->is_category ) {
$lengthses = '100';
} elseif ( $wp_query->is_tag ) {
$lengthses = '50';
} elseif ( $wp_query->is_tax ) {
$lengthses = '30';
} elseif ( $wp_query->is_archive ) {
if ( $wp_query->is_day ) {
$lengthses = '60';
} elseif ( $wp_query->is_month ) {
$lengthses = '60';
} elseif ( $wp_query->is_year ) {
$lengthses = '60';
} elseif ( $wp_query->is_author ) {
$lengthses = '400';
} else {
$lengthses = '500';
}
} elseif ( $wp_query->is_search ) {
$lengthses = '400';
} elseif ( $wp_query->is_404 ) {
$lengthses = '';
}
$date      = $item->get_date('F Y');

$suffix = '&hellip;';
$short_desc = trim(str_replace(array("&nbsp;", "/r", "/n", "/t"), '',     strip_tags($stringses)));
$desc = trim(substr($short_desc, 0, $lengthses));
$lastchar = substr($desc, 0, 1);
if ($lastchar == '.' || $lastchar == '!' || $lastchar == '?') $suffix='';
$desc .= $suffix;

$html .= '<li class="item"><a target="_blanc" href="' . $link . '" title="' . $title . '">';
if ( preg_match( '/<img.+?src="(.+?)"/', $item->get_content(), $matches ) ) {
$html .= '<span class="rss-image"><div class="square attachment-special" style="background-image: url(' . $matches[1] . ');"><img style="opacity: 0;" class="attachment-special" src="' . $matches[1] . '"/></div></span></a>';
}
elseif ($enclosure = $item->get_enclosure()) {
$html .= '<span class="rss-image"><div class="square attachment-special" style="background-image: url(' . $enclosure->get_link() . ');"><img style="opacity: 0;" class="attachment-special" src="' . $enclosure->get_link() . '"/></div></span></a>';
}
else {
$html .= '<img class="attachment-special" src="' . get_stylesheet_directory_uri() . '/img/logga/500x500.png"/></a>';
}
$html .= '<div class="item-content"><h5 class="pink-text">' . $authorcredit . '</h5><a target="_blanc" href="' . $link . '" title="' . $title . '"><span class="data"><h1 class="entry-title">' . $title . '</h1></span></a>';
$html .= '<p>' . $desc . '</p>';$html .= '</li>';
}

} else {
$html .= '<li>No items</li>';
}$html .= '</ul>';

echo $html;
}
}

заранее спасибо

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector