cms_img anfängerfrage

Gesperrt
maccaroni
Beiträge: 79
Registriert: So 21. Mai 2006, 18:18
Kontaktdaten:

cms_img anfängerfrage

Beitrag von maccaroni »

hallo zusammen

ich habe mir folgendes modul zusammengebaut:

Code: Alles auswählen

<?php
echo "CMS_IMG[1]";
echo "<p>"."CMS_HTML[1]"."</p>";
?>
ein konkretes beispiel für einen einsatz habe ich nicht, ich versuche mich lediglich mit contenido anzufreundenm was bisher ganz gut geht.

was bringt mir eingentlich das element cms_img? es ist ein platzhalter für ein bild, ok, aber was mache ich damit? in dem artikel sehe ich jedenfalls keinen platzhalter. was kann ich damit anstellen, kann man das kurz und bündig sagen? (laut doku, gibt die url eines bildes zurück). die frage ist, von welchem bild und an was zurück?

sorry für die verständnisfrage.

gruss ronan
HerrB
Beiträge: 6935
Registriert: Do 22. Mai 2003, 12:44
Wohnort: Berlin
Kontaktdaten:

Beitrag von HerrB »

Die Verwendung von CMS_IMG ist ganz so einfach. Beispiel-Modul siehe hier:

http://www.contenido.org/forum/viewtopi ... 2083#82083

Gruß
HerrB
Bitte keine unaufgeforderten PMs oder E-Mails -> use da Forum!

Newsletter: V4.4.x | V4.6.0-15 (Module, Backend) | V4.6.22+
Standardartikelliste: V4.4.x | V4.6.x
http://www.contenido.org/forum/search.php | http://faq.contenido.org | http://www.communido.net
maccaroni
Beiträge: 79
Registriert: So 21. Mai 2006, 18:18
Kontaktdaten:

Beitrag von maccaroni »

hallo herrb

irgendwie typisch, ich habe den von dir verlinkten beitrag schon angesehen, allerdings nur bis zum ersten link von emergence.

ich habe ein bischen getestet, und habe das ganze für mein verständnis ein bischen umgeschrieben und es funktioniert auch ohne die if-abfragen (bin noch blutiger php-anfänger):

Code: Alles auswählen

<?php 
echo '<img src="CMS_IMG[1]" />'; 
echo "<br />"; 
echo "CMS_IMGDESCR[1]"; 
echo "<br>"; 
echo "CMS_LINKDESCR[1]"; 
echo "<br />"; 
?>
wenn es nicht allzuviel aufwand ist, wäre ich um eine erklärung der if-abfragen froh.

Code: Alles auswählen

if ("CMS_IMG[1]" != "") { 
    $img = '<img src="CMS_IMG[1]" border="0">'; 
heisst das soviel wie: wenn der platzhalter nicht leer ist, setze ein image mit border 0?

Code: Alles auswählen

if ("CMS_LINK[1]" != "http://") { 
        $img = sprintf('<a href="%s" target="%s">%s</a>',"CMS_LINK[1]", "CMS_LINKTARGET[1]", $img); 
    } 
keeeine ahnung, was da geschieht :-)

falls die erklärung zu kompliziert sein sollte, so verwende ich das modul einfach so, wie in deinem link von dir vorgeschlagen und hoffe, im laufe der zeit den durchblick zu erhalten.

gruss ronan
HerrB
Beiträge: 6935
Registriert: Do 22. Mai 2003, 12:44
Wohnort: Berlin
Kontaktdaten:

Beitrag von HerrB »

CMS_IMG enthält - wenn konfiguriert - den Bildpfad (src). Damit wäre es ungünstig, das img-tag auszugeben, wenn noch kein Bild festgelegt wurde, daher:

Code: Alles auswählen

<?php 
if ("CMS_IMG[1]" != "") { 
    $img = '<img src="CMS_IMG[1]" border="0">'; 
Wurde ein Link definiert, dann erzeuge um das Bild herum einen a-tag. Unter http://www.php.net findet sich die geheime Seite mit der PHP-Dokumentation. Mit Hilfe von BND, ein paar Journalisten und Bestechung sind wir an die Erklärung gekommen, was sprintf so macht:

*For Your Eyes Only*
sprintf("A","B1", ... , "BN"); ersetzt bestimmte Platzhalter in A durch die Werte B1 bis BN. Die Anzahl der Werte ist abhängig von der Anzahl der Platzhalter in A.

Platzhalter kann z.B. %s für String (=Text) sein.

sprintf ("PHP lernen ist %s, weil %s", "geil", "man damit so viel machen kann"); ergibt "PHP lernen ist geil, weil man damit so viel machen kann".

Es ist die einfachste Methode, in bestimmte Ausdrücke eine beliebige Anzahl von Teilen einzubauen (statt "<a href=\""."CMS_LINK[1]"."\" target ... usw.).

*Diese Nachricht zerstört sich von selbst in 5 ... 4 ... 3 ... 2... * :wink:

Daher:

Code: Alles auswählen

    if ("CMS_LINK[1]" != "http://") { 
        $img = sprintf('<a href="%s" target="%s">%s</a>',"CMS_LINK[1]", "CMS_LINKTARGET[1]", $img); 
    } 
Baut alse den a-tag mit dem Bild-Code in der Mitte (letztes $img).

Code: Alles auswählen

    echo $img; 
} 
Haut das Ergebnis raus.

Code: Alles auswählen

echo "<br>"; 
echo "CMS_IMGDESCR[1]"; 
Sorgt dafür, dass man überhaupt dieses Image-Bild zum Festlegen des Bildes im Editor bekommt (na ja, und speichert die Beschreibung, wenn ich mich recht erinnere).

Code: Alles auswählen

echo "<br>"; 
echo "CMS_LINKDESCR[1]"; 
Stellt ein Link-Bild zum Festlegen des Links für das Bild zur Verfügung (denn bei der Bildauswahl kann ich keinen Link festlegen)

Das sollte helfen, denke ich ... :wink:

Gruß
HerrB
Zuletzt geändert von HerrB am Fr 16. Jun 2006, 08:32, insgesamt 1-mal geändert.
Bitte keine unaufgeforderten PMs oder E-Mails -> use da Forum!

Newsletter: V4.4.x | V4.6.0-15 (Module, Backend) | V4.6.22+
Standardartikelliste: V4.4.x | V4.6.x
http://www.contenido.org/forum/search.php | http://faq.contenido.org | http://www.communido.net
maccaroni
Beiträge: 79
Registriert: So 21. Mai 2006, 18:18
Kontaktdaten:

Beitrag von maccaroni »

ah mein gott *aufdiekniefall

mein schönes php-buch hatte keine solch schöne erklärung zu «sprintf» *nachrichtwegwerf

gut, das ganze wird auch auf seite 348 erklärt, und ich bin doch erst auf seite 48 :-)

vielen dank für die geduld, hoffe, ich habe die nerven php durchzustehen...bin ich doch eingentlich designer ;-)

gruss ronan
silicone
Beiträge: 299
Registriert: Di 15. Mär 2005, 10:33
Kontaktdaten:

Beitrag von silicone »

bin ich doch eigentlich designer
Ja, so geht's einigen :D
Gesperrt