Flash Newsticker (vielmehr: generate template ersetzen?)

Gesperrt
jcf
Beiträge: 44
Registriert: Fr 22. Dez 2006, 17:30
Kontaktdaten:

Flash Newsticker (vielmehr: generate template ersetzen?)

Beitrag von jcf »

Hallo Zusammen,

ich bastle mir gerade einen Flash Newsticker. Von Seiten Flash habe ich keine Probleme. Ich versuche die in Contenido schon vorhandene Newsliste abzuwandeln. Allerdings würde dies nur funktionieren, wenn ich das Template quasi ersetze und nur eine PHP Variable erzeuge. Bsp:

Code: Alles auswählen

<?php $news = "<a href='url1'>Headline1</a>||<a href='url2'>Headline2</a>||<a href='url3'>Headline3</a>||
Diese Variable würde ich dann anschließend im Layout an Flash übergeben. Bsp:

Code: Alles auswählen

... src="flashdatei.swf?news=<?php echo $news; ?>" ...
Das eigentliche Problem ist also: Wie schaffe ich es den Befehl $tpl->generate('templates/'.$template); so zu ersetzen, dass ich auf das Modul-Template verzichten kann und einfach nur eine entsprechende php-Variable erzeuge? Ich komme hier irgendwie überhaupt nicht weiter!

Herzlichen Dank für Eure Hilfe!

Liebe Grüße

jcf
xmurrix
Beiträge: 3215
Registriert: Do 21. Okt 2004, 11:08
Wohnort: Augsburg
Hat sich bedankt: 4 Mal
Danksagung erhalten: 17 Mal
Kontaktdaten:

Beitrag von xmurrix »

Hallo,

du kannst die Ausgabe des Codes bei Aufruf der Funktion generate() auch unterbinden und den Wert einer Variablen zuweisen:

Code: Alles auswählen

// der 2. parameter sorgt dafür, dass der code nicht ausgegeben, sondern zurückgeliefert wird
$news = $tpl->generate('templates/'.$template, 1);
$news = urlencode($news);
...
    print '
<object ... data="flashdatei.swf?news=' . $news . '" ...
    ';
Wenn du aber nur die Headlines brauchst, kannst z. B. den Code in der Modulausgabe

Code: Alles auswählen

            $tpl->set('d', 'HEADLINE', $teaserheadline);
            $tpl->set('d', 'TEXT', $teasertext);
            $tpl->set('d', 'HREF', $href);
            $tpl->set('d', 'IMG', $teaser_img);
            $tpl->set('d', 'MORE', mi18n("mehr"));

            $tpl->next();

        } // end for

        $tpl->generate('templates/'.$template);
gegen

Code: Alles auswählen

            $news .= "<a href='".$href."'>".$headline."</a>";
            if ($i < $limit_art - 1) {
                $news .= "||";
            }

        } // end for

        $news = urlencode($news);
        print '
    <object ... data="flashdatei.swf?news=' . $news . '" ...
        ';
ersetzen (sollte gehen).

Dann wären noch einige andere Bereiche, wie z. B. Teaserbild, in der Moduleingabe/-ausgabe anzupassen, da diese dann nicht mehr gebraucht werden.

Gruß
xmurrix
jcf
Beiträge: 44
Registriert: Fr 22. Dez 2006, 17:30
Kontaktdaten:

Beitrag von jcf »

sieht gut aus. sehr schön! Werde ich heute oder morgen mal testen. Herzlichen Dank!
jcf
Beiträge: 44
Registriert: Fr 22. Dez 2006, 17:30
Kontaktdaten:

Beitrag von jcf »

Super. Hat geklappt! Vielen Dank noch mal!
derSteffen
Beiträge: 847
Registriert: Mi 14. Dez 2005, 16:15
Wohnort: Königs Wusterhausen bei Berlin
Kontaktdaten:

Beitrag von derSteffen »

Schade, warum zeigst du denn nicht Deinen funktionierenden Flashticker hier im Forum?
Gesperrt