VIMEO XML / RSS laden + cache

Een board om T&T's te plaatsen m.b.t. CMSMS, PHP of Smarty

Moderator: velden

Locked
HarmO
Power Poster
Power Poster
Posts: 251
Joined: Thu Jan 26, 2012 3:22 pm
Location: Belgium

VIMEO XML / RSS laden + cache

Post by HarmO »

Hey,

Ik wil volgende tip met jullie delen.

Ik wil op een website de laatste video's van hun Vimeo pro account laden en weergeven op een manier dat het geïntegreerd is in de website.

Gelukkig kan je bij Vimeo een XML laden met de laatste 20 videos: https://developer.vimeo.com/apis/simple

Dus maak ik met smarty een stukje code die deze file ophaalt en gaat weergeven:

Code: Select all

{$xmlfeed = simplexml_load_file('http://vimeo.com/api/v2/channel/724855/videos.xml')}

<ul class='vimeovids'>
{foreach from=$xmlfeed item=vid}
	<li>{$vid|@print_r}</li>
{/foreach}
</ul>
dit werkt goed, enige probleem: elke keer dat de pagina geladen wordt, wordt de XML geladen. dus wil ik de XML feed in het cache op mijn webserver bewaren.

Daarvoor heeft @Rolf een mooie plugin ontwikkeld : Cache remote file

en met minimale aanpassingen van de code wordt de xml-file nu 1 uur opgeslagen in de tmp folder.

Code: Select all

{capture assign=xmlfeed}{cache_remote_file url="http://vimeo.com/api/v2/channel/724855/videos.xml"}{/capture}

<ul class='vimeovids'>
{foreach from=$xmlfeed|@simplexml_load_string item=vid}
	{foreach from=$xmlfeed item=vid}
	<li>{$vid|@print_r}</li>
{/foreach}
</ul>
Voordelen:
- verbeter de pagina laad tijd
- reduceer het aantal request aan je XML (interessant als je betaald per aanvraag zoals bij google/youtube)
- ook mogelijk voor RSS / Json enz ...
Kind regards,
HarmO
Locked

Return to “Tips en Trucs”