CMS_VALUE aus anderen Kategorien referenzieren

Gesperrt
chriz_the_wiz
Beiträge: 27
Registriert: Fr 23. Jun 2006, 14:13
Kontaktdaten:

CMS_VALUE aus anderen Kategorien referenzieren

Beitrag von chriz_the_wiz »

Gibt es eine Methode oder Möglichkeit an CMS_VALUE Werte aus einer anderen Kategorien zu bekommen, als der, in der ich mich befinde?

z.b.

methodenname(CMS_VALUE[x], idcat_irgendeiner_Kategorie);

konnte in der API und im Forum nix finden. ist auch ein wenig exotisch
:D

danke!

chriz
emergence
Beiträge: 10653
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence »

sieh dir mal contenido/classes/class.templateconfig.php an...
*** make your own tools (wishlist :: thx)
chriz_the_wiz
Beiträge: 27
Registriert: Fr 23. Jun 2006, 14:13
Kontaktdaten:

Beitrag von chriz_the_wiz »

jau, mach ich! danke...
chriz_the_wiz
Beiträge: 27
Registriert: Fr 23. Jun 2006, 14:13
Kontaktdaten:

Beitrag von chriz_the_wiz »

cool, das sieht gut aus! jetzt brauch ich nur noch die ID von dem Startartikel einer kategorie ermittelt. fällt dir auf die schnelle was ein?
stese
Beiträge: 1040
Registriert: Fr 3. Dez 2004, 17:47
Wohnort: München
Kontaktdaten:

Beitrag von stese »

in der tabelle cat_lang steht in der spalte startidartlang die idartlang (tabelle art_lang) des startartikels der kategorie
chriz_the_wiz
Beiträge: 27
Registriert: Fr 23. Jun 2006, 14:13
Kontaktdaten:

Beitrag von chriz_the_wiz »

hallo stese,

danke für deinen tip. hab bisher folgende lösung codiert:

Code: Alles auswählen

/* StartartikelID von der übermittelten Kategorie (hier: $_REQUEST[artist]) ermitteln */
$sql = "SELECT startidartlang FROM ".$cfg["tab"]["cat_lang"]." WHERE idcat='$_REQUEST[artist]' AND idlang='".$lang."'";
$db->query($sql);
if ($db->next_record()) {
   $startidartlang = $db->f("startidartlang");   					
   if ($startidartlang != 0)
   {
     		$sql = "SELECT idart FROM ".$cfg["tab"]["art_lang"]." WHERE idartlang='$startidartlang'";
       		$db->query($sql);
       		$db->next_record();
       		$startarticle_id = $db->f("idart");
    }
}

/* bestimmte Konfig des Startartikels ermitteln */
$tc = new templateConfig($startarticle_id);
$val_arr = $tc->getData(13);
print_r($arr);
evtl. kann ja wer was mit anfangen oder jemand findet einen bug.
cheers!

chriz
stese
Beiträge: 1040
Registriert: Fr 3. Dez 2004, 17:47
Wohnort: München
Kontaktdaten:

Beitrag von stese »

geth auch kürzer und mit einer SELECT in ner Join (ungetestet)

Code: Alles auswählen

$sql = "SELECT al.idart FROM ".$cfg["tab"]["cat_lang"]." cl LEFT JOIN " . $cfg["tab"]["art_lang"] . " al ON cl.startidartlang = al.idartlang WHERE cl.idcat='" . $_REQUEST[artist] . "' AND cl.idlang='" . $lang . "'";
$db->query($sql);
if ($db->next_record()) {
	$startarticle_id = $db->f("idart");
}

/* bestimmte Konfig des Startartikels ermitteln */
$tc = new templateConfig($startarticle_id);
$val_arr = $tc->getData(13);
print_r($arr);
Gesperrt