Modul mehrmals in verschiedenen containern des selben Templ.

Gesperrt
Joerg
Beiträge: 11
Registriert: Di 17. Sep 2002, 17:08
Kontaktdaten:

Modul mehrmals in verschiedenen containern des selben Templ.

Beitrag von Joerg » Mo 23. Jun 2003, 08:57

Hallo,
ich möchte ein Modul mehrmals in verschiedenen containern des selben Templates einsetzen.

In Contenido 4.2 musste man dazu mit dem hässlichen hack der Art

Code: Alles auswählen

// input
echo "<input type=\"hidden\" name=\"CMS_VAR[1]\" value=\"".$value."\">";

// output
CMS_HTML[CMS_VALUE[1]1]
arbeiten, wobei $value = Container-Nummer.

Wie kann man das in 4.3 bewerkstelligen?

Mein Testmodul für 4.3, das lediglich die Container-Nummer anzeigen soll:

Code: Alles auswählen

input:
echo "<input type=\"hidden\" name=\"CMS_VAR[1]\" value=\"".$value."\">";

output:
<?php
echo "container Nummer: CMS_VALUE[1]";
?>
Zweimal in einem Template eingefügt, zeigt das Modul
container Nummer: 14
container Nummer: 14
an.

Vielen Dank für jeden Tipp,
Joerg

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

Beitrag von HerrB » Mo 23. Jun 2003, 15:39

Hallo Joerg,

Du musst die Module vervielfachen. Wenn Du es - sagen wir mal - dreimal verwenden möchtest, musst Du es als Modul dreimal definieren:

1. Wie Du es schon hast

2.

Code: Alles auswählen

input: 
echo "<input type=\"hidden\" name=\"CMS_VAR[2]\" value=\"".$value."\">"; 

output: 
<?php 
echo "container Nummer: CMS_VALUE[2]"; 
?>
3.

Code: Alles auswählen

input: 
echo "<input type=\"hidden\" name=\"CMS_VAR[3]\" value=\"".$value."\">"; 

output: 
<?php 
echo "container Nummer: CMS_VALUE[3]"; 
?>
Gruß
HerrB

Gast

Beitrag von Gast » Di 24. Jun 2003, 13:15

Hallo HerrB!
HerrB hat geschrieben: Du musst die Module vervielfachen. Wenn Du es - sagen wir mal - dreimal verwenden möchtest, musst Du es als Modul dreimal definieren:
Ohje, das wäre ja ziemlich umständlich. Wenn ein Redakteur die Möglichkeit haben soll, ein beliebiges Modul beliebig oft auf eine Seite bringen zu können, bräuchte man ja eine Menge Module.
2.

Code: Alles auswählen

input: 
echo "<input type="hidden" name="CMS_VAR[2]" value="".$value."">"; 

output: 
<?php 
echo "container Nummer: CMS_VALUE[2]"; 
?>
Hm, $value wird zwar gefüllt, bei mir jedoch immer mit Werten, die mir nichts sagen (Bei meinem Testmodul 14, in einem anderen mit CMS_HTML 21).

In includes/include.pretplcfg_edit_form.php werden die Container in $cnumber durchnumeriert. Nach folgender Umstellung kann ich mein Modul beliebig oft in verschiedenen Containern auf dem gleichen Template einsetzen (vereinfacht):

Code: Alles auswählen

// input
echo "<input type="hidden" name="CMS_VAR[1]" value="".$cnumber."">";

// output
<?php
// Bild einfuegen
if ("CMS_IMG[CMS_VALUE[1]]" != "") {
    $img = '<img src="CMS_IMG[CMS_VALUE[1]]" border="0">';
    echo $img;
}
echo "<br>CMS_IMGDESCR[CMS_VALUE[1]]";
?>
Viele Grüße,
Joerg

Joerg
Beiträge: 11
Registriert: Di 17. Sep 2002, 17:08
Kontaktdaten:

Modul mehrmals in verschiedenen containern des selben Templ.

Beitrag von Joerg » Di 24. Jun 2003, 13:21

... vergessen einzuloggen :-\.
Viele Grüße,
Joerg

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

Wieder was dazugelernt...

Beitrag von HerrB » Di 24. Jun 2003, 16:58

Hallo Joerg,

wieder was dazugelernt...

Und ein Hinweis für "Beginner" (meine Wenigkeit eingeschlossen):
Wird dieses "Hacked"-Modul verwendet, sollten andere Module, die im gleichen Template eingesetzt werden, keine absoluten Referenzierungen enthalten (e.g. CMS_IMG[1]) bzw. nur überprüfte (e.g. CMS_IMG[10], wenn es nur <10 Container gibt), sonst wird's lustig... :shock:

Gruß
HerrB

stony
Beiträge: 360
Registriert: Di 10. Jun 2003, 09:02
Wohnort: Berlin
Kontaktdaten:

Beitrag von stony » Mi 17. Sep 2003, 11:57

Hiho,

gerade diesen thread gefunden, leider funktioniert dieses modul wohl nicht mehr bei der aktuellen version habe schon im moduloutputbereicht eine rote warnlampe und funtktionieren tut es auch nicht. kann das bild über den editor nicht festlegen.

gruss stony

Gesperrt