Externe Inhalte in Smarty Templates einbinden
Wie bindet man Scripte und Texte von externen Domains in Smarty Templates ein?
Dafür gibt es unterschiedliche Ansätze.
Externes PHP-Scripte können so eingebunden werden:
{php}
include ("http://www.domain.de/script.php");
{/php}
include ("http://www.domain.de/script.php");
{/php}
Natürlich können auch Variablen an das externe Script übergeben werden.
Externes PHP Script mit Variable $title aus dem Smarty Template:
{php}
 $keywords =& $this->get_template_vars('title');
 include ("http://www.domain.de/script.php?parameter=$keywords");
{/php}
 $keywords =& $this->get_template_vars('title');
 include ("http://www.domain.de/script.php?parameter=$keywords");
{/php}
Ein Textfile kann einfach eingebunden werden, wenn 'fopen wrappers' in PHP erlaubt ist:
{php}
 $content=file_get_contents("http://www.domain.de/textfile.txt");
 echo $content;
{/php}
 $content=file_get_contents("http://www.domain.de/textfile.txt");
 echo $content;
{/php}
Sollte aber 'fopen wrappers' in PHP deaktiviert sein, muss über Umwege die Datei geholt werden. Zum Beispiel mit CURL:
{php}
 $URL = "http://www.domain.de/textfile.txt";
 $ch = curl_init();
 curl_setopt($ch, CURLOPT_URL,$URL);
 curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
 $content = curl_exec($ch);
 unset($ch);
 echo $content;
{/php}
 $URL = "http://www.domain.de/textfile.txt";
 $ch = curl_init();
 curl_setopt($ch, CURLOPT_URL,$URL);
 curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
 $content = curl_exec($ch);
 unset($ch);
 echo $content;
{/php}
Verwandte Beiträge:
- Keine
Trackback
RSS Feed

Loading ...
4 Kommentare
1.
Webagentur
schrieb am 19. August 2008 um 08:11
Nett erklärt … Wie kann ich ein kleines Template, in das Haupt-Template integrieren?
2.
Axel
schrieb am 19. August 2008 um 12:30
ganz einfach mit:
{include file="kleineTemplate.html"}3.
fLYer
schrieb am 11. March 2010 um 17:05
eine frage bleibt für mich trotzdem noch offen: können zwischen den php-tags geschweifte klammern verwendet werden? vielen dank für ihre antworten!
4.
Axel
schrieb am 11. March 2010 um 19:17
Ja, es können zwischen den PHP-Tags geschweifte Klammern genutzt werden. Was nicht geht, sind die Smartytags.