Hallo ich habe mal eine Frage und zwar lese ich von cointelegraph einen RSS Feed aus mit folgendem Code
leider habe ich folgende Probleme das Bild passt nicht zum Beitrag sondern ist scheinbar vom vorherigen. Außerdem hab ich festgestellt wenn ich 2 oder mehrere
Einträge anzeigen lasse haben dann alle das gleiche Bild.
Weiß da vielleicht jemand woran das liegen könnte bzw. was ich falsch gemacht habe.
Desweiteren wie kann man die $item->description zerlegen in den normalen Text und die darin enthaltene Image url.
Außerdem würde ich gerne wissen ob man den ausgelesenen Feed in z.Bsp. einer Cache htm ablegen kann und den erst nach beispielsweise 30 minuten erneuern kann um ladezeiten zu sparen also das nicht bei jedem Seitenaufruf der Feed abgefragt wird. Falls das gehen sollte würde ich gerne wissen wie.
Danke schon mal im voraus.
PHP:
<?php
if( !$xml = simplexml_load_file('https://de.cointelegraph.com/rss/tag/bitcoin') ) {
die('Error - can´t reading the XML file!');
}
$out = array();
$i = 1; // Anzahl Datensätze
if( !isset($xml->channel[0]->item) ) {
die('No Items found! ');
}
foreach($xml->channel[0]->item as $item) {
if( $i-- == 0 ) {
break;
}
$out[] = array(
'title' => (string) $item->title,
'description' => (string) $item->description,
'link' => (string) $item->guid,
'date' => date('d.m.Y', strtotime((string) $item->pubDate))
);
}
$re = '/\<IMG[\s\S]*?SRC\=\"([^\"]+\.jpg)\"/mi';
$str = $item->description;
preg_match($re, $str, $matches);
foreach ($out as $value) {
echo '<div class="card">';
echo '<img class="card-img-top img-fluid" src="'. $matches[1] .'" alt="Bitcoin News">';
echo '<div class="card-body">';
echo '<h6 class="card-title">'. $value['date'] .'</h6>';
echo '<hr>';
echo '<p class="card-text">'. $value['title'] .'</p>';
echo '<a href="#" class="btn btn-primary"><i class="fab fa-readme"></i> mehr...</a>';
echo '</div>';
echo '</div>';
}
?>
leider habe ich folgende Probleme das Bild passt nicht zum Beitrag sondern ist scheinbar vom vorherigen. Außerdem hab ich festgestellt wenn ich 2 oder mehrere
Einträge anzeigen lasse haben dann alle das gleiche Bild.
Weiß da vielleicht jemand woran das liegen könnte bzw. was ich falsch gemacht habe.
Desweiteren wie kann man die $item->description zerlegen in den normalen Text und die darin enthaltene Image url.
Außerdem würde ich gerne wissen ob man den ausgelesenen Feed in z.Bsp. einer Cache htm ablegen kann und den erst nach beispielsweise 30 minuten erneuern kann um ladezeiten zu sparen also das nicht bei jedem Seitenaufruf der Feed abgefragt wird. Falls das gehen sollte würde ich gerne wissen wie.
Danke schon mal im voraus.
Zuletzt bearbeitet von einem Moderator: