Ich benutze functions.make_cms_type.php (siehe http://www.contenido-wiki.org/wiki/inde ... ent.2Cn.29) um einen Footer-Artikel mit zahlreichen Links zu erzeugen. Diesen binde ich mit Hilfe der Tabelle con_code in alle Seiten ein. Aber die eingegebenen Werte erscheinen nicht. Werte die mit CMS_VALUE[x] oder CMS_TEXT[x] im Artikel-Output eingebunden sind, kommen an. Eingaben die in durch make_cms_type("CMS_TEXT", x ) erzeugten Felder gemacht werden, bleiben leer.
Der Code im einzelnen (vereinfacht):
Das Footer-Modul:
Code: Alles auswählen
cInclude('includes', 'functions.make_cms_type.php');
echo"
<!--start-->
CMS_VALUE[100]
CMS_TEXT[101]";
for($i=0; $i<10; $i++){
echo'
<a href="'.make_cms_type("CMS_LINK",( 200 + $i)).'" alt="'.make_cms_type("CMS_LINKTITLE",( 200 + $i)).'">'.make_cms_type("CMS_TEXT",( 250 + $i)).'</a>'.make_cms_type("CMS_LINKEDIT",( 200 + $i))';
}
echo' <!--end-->';
Code: Alles auswählen
$sql = "SELECT code FROM ".$cfg["tab"]["code"]." WHERE idcatart = 35 AND idlang = 1";
$db->query($sql);
if ($db->next_record()) {
$code = stripslashes($db->f("code"));
$db->free();
ob_start();
eval("?>
".$code."
<?php
");
$code = ob_get_contents();
ob_end_clean();
$startpos = strpos($code, "<!--start-->");
$endpos = strpos($code, "<!--end-->");
$difflen = $endpos - $startpos;
$code = substr($code, $startpos, $difflen);
echo $code;
}
Meine Frage nun an die Experten: Gibt es einen Trick? Ist ein Fehler in meinem Code? Kann man functions.make_cms_type.php modifizieren, dass es geht - und wenn ja, wie?
Contenido 4.8.16
Schöne Grüße, Andras