tags ud - disse kan være andet end RSS så vi gennemløber og henter kun href for dem der er rss preg_match_all('/]*)>/i', $kildekode, $linkTags); $feeds = array(); foreach ($linkTags[1] as $linkTag) { //hvis linktag indeholder application/rss+xml henter vi href fra dette ud if (preg_match('/type=["\']application\/rss\\+xml["\']/i',$linkTag) && preg_match('/href=["\']([^"\']+)["\']/i', $linkTag, $href)) { $feeds[]=$href[1]; } } if (count($feeds)>0) { return $feeds; } else { return false; } } /** * Henter indlæg fra et rss feed * @param string url til rss feed * @param integer antal poster der skal hentes * @return array med titler og links til indlæg */ function hentPost($url,$antal=1) { $poster=array(); //hent feed med simplexml if ($feed = simplexml_load_file($url)) { $i=0; //gennemløb feed så længe der er poster og vi ikke har hentet max $antal do { $postTitel = $feed->channel[0]->item[$i]->title; $postLink = $feed->channel[0]->item[$i]->link; $postTekst = $feed->channel[0]->item[$i]->description; $poster[]=array( 'titel'=>(string)$postTitel, 'link'=>(string)$postLink, 'tekst'=>(string)$postTekst ); $i++; } while ($feed->channel[0]->item[$i] && $i<$antal); } if (count($poster)>0) { return $poster; } else { return false; } } //behandel kommentarsubmit - husk dette er kun test, i virkeligheden burde du ha noget valdering på det hele if (isset($_POST) && count($_POST)) { echo '

Post data

'."\n"; foreach ($_POST as $key=>$val) { echo '',$key,': ',$val."
\n"; } if (isset($_POST['hentSeneste']) && !empty($_POST['kommentarWebsite'])) { //hent feed urls fra kommetarWebsite $feedUrl = hentFeedUrl($_POST['kommentarWebsite']); if ($feedUrl) { $feedUrl = $feedUrl[0]; echo 'Feed url: ',$feedUrl."
\n"; //hent seneste blogindlæg - ønsker du flere kan du fx senste 10 kan du angive ,10 efter $feedUrl $senestePost = hentPost($feedUrl); /* senestePost[0]['link'] indeholder nu linket til det seneste blogindlæg senestePost[0]['titel'] indeholder titlen på blogindlæget senestePost[0]['tekst'] indeholder beskrivelse/hele blogindlæg alt efter hvordan brugerns blog er opsat Disse værdier kan du nu gemme til din database */ if ($senestePost) { echo ' Link til seneste post: ', $senestePost[0]['link'],'
Titel: ', $senestePost[0]['titel'],'
'; } } } } ?>

Hent seneste blogindlæg fra en given url

NB: Dette er en testside, og ingen data vil blive gemt - indtast som minimum et website og afkryds hent seneste blogindlæg