RSS Feeds in Template oder Inhalt einbinden

Erweiterungen
Post Reply
Gert
Posts: 2135
Joined: Sun 18. Nov 2012, 14:18

RSS Feeds in Template oder Inhalt einbinden

Post by Gert »

Hallo,

das Thema RSS Feeds will ich schon seit Jahren loswerden, aber es verfolgt mich irgendwie :roll:

Jetzt habe ich ein Script gefunden und nicht nur erweitert, sondern auch minimiert ;)

php Code (z. B. in der ./cmsimple/userfuncs.php):

Code: Select all

function embedRssFeed($src='',$nbrof=4,$feedDesc='',$trimEnd=-14)
{
	$rssNbrMax=$nbrof;
	$rssNbr=0;
	$rss = simplexml_load_file($src); 
	$feed = '<hr class="erf_hr">
<ul class="erf_container">'; 
	foreach($rss->channel->item as $i) 
	{
		$rssNbr++;
		if($rssNbr<=$rssNbrMax)
		{
			$feed.= '<li>
<b><a href="' . $i->link . '">' . $i->title . '</a></b><br><span>' . substr($i->pubDate,0,$trimEnd) . '</span>';
			if($feedDesc == 'desc')
			{
				$feed.= '<br>' . $i->description;
			}
			$feed.= '<hr class="erf_hr">
</li>
';
		}
	}
	$feed.= '</ul>
';
//	print_r($i);
	return $feed;
}

CSS Code (z. B. in der stylesheet.css des Templates):

Code: Select all

ul.erf_container {list-style: none; border-top: 0px solid #999; padding: 0; margin: 0;}
ul.erf_container li {border-bottom: 0px solid #999; padding: 0; margin: 0;}
ul.erf_container li span {font-size: 14px; line-height: 28px; font-weight: 700;}
hr.erf_hr {clear: both; padding: 0; margin: 12px 0;}

Funktionsaufrufe:

Code: Select all

Beispiel Funktionsaufruf im Inhalt: 
{{{function:embedRssFeed('https://www.wetterkontor.de/de/rss.asp',4,'desc');}}}

Beispiel Funktionsaufruf im Template: 
<?php echo embedRssFeed('https://www.wetterkontor.de/de/rss.asp',4,'nodesc');?>

Zum testen eignen sich ganz gut die RSS Feeds der Tagesschau:

https://www.tagesschau.de/infoservices/rssfeeds

Aber bitte nicht alles glauben, was da steht :mrgreen:

Ich bin ja grundsätzlich kein Freund von fremden Inhalten auf der Website, aber dieses Script kann man auch nutzen, um z. B. die neuesten Beiträge aus dem eigenen Blog in der Sidebar zu verlinken,

Gert

==============================

PS: Da dieses Script weder Konfigurations- noch Sprachdatei braucht, könnte ich es bei Interesse im Collection Plugin unterbringen.
Gert Ebersbach | CMSimple | Templates - Plugins - Services
Post Reply