Seite 1 von 1

Hilfe Google Sitemap u. Mehrsprachigkeit

Verfasst: Mo 21. Nov 2011, 21:58
von volupp11
Habe mir das Modul Google Sitemap gezogen und habe ein kleines Problem. Bei Mehrsprachigkeit erkennt das Modul nicht mehr, ob es sich um einen Startartikel handelt oder nicht. Ich bin einfach zu blöd, und finde partout den Fehler nicht. Hier einmal auszugsweise den Quellcode, in dem irgendwo der Wurm steckt:

Code: Alles auswählen

$query = "SELECT
             E . idcat , 
             E . idart , startidartlang ,
             D . pagetitle ,
             C . name ,
             UNIX_TIMESTAMP( D . lastmodified ) AS lastmodified
          FROM
             ".$cfg["tab"]["cat_tree"]." AS A ,
             ".$cfg["tab"]["cat_lang"]." AS C ,
             ".$cfg["tab"]["cat"]." AS B ,
             ".$cfg["tab"]["cat_art"]." AS E
             INNER JOIN  ".$cfg["tab"]["art_lang"]." AS D  ON ( E . idart  =  D . idart )
          WHERE
                A . idcat  =  B . idcat
            AND B . idcat  =  C . idcat
            AND C . idcat  =  E . idcat
            AND B . idclient  = '".$client."'
            AND C . idlang  = '".$lang."'
            AND D . idlang  = '".$lang."'
            AND C . visible  = '1'
            AND E . idcatart IS NOT NULL
            AND D . online = '1'
            ".$weiterleitungen."
            ".$dontshow."
          ORDER BY
            A . idtree, E . idart";


if ($db->f("idart") == $db->f("startidartlang")) {  
 // Wenn Startartikel gebe nur Kategorie aus
    $link = ModRewrite::build_new_url("?idcat=$linkcat");
    } else {
// Wenn kein Startartikel gebe nur Artikel aus
    $link = ModRewrite::build_new_url("?idart=$linkid");
    } 
Ich hoffe jemand hat einen hilfreichen Tipp für mich.

Re: Hilfe Google Sitemap u. Mehrsprachigkeit

Verfasst: Di 22. Nov 2011, 09:16
von Spider IT
Du vergleichst hier eine idart mit eine idartlang, das geht nicht (Äpfel und Birnen :)).
Änder das zu

Code: Alles auswählen

if ($db->f("idartlang") == $db->f("startidartlang")) {
und nehme D.idartlang in der Query beim SELECT mit auf, dann sollte es funktionieren:

Code: Alles auswählen

$query = "SELECT
             E . idcat , 
             E . idart , startidartlang ,
             D . pagetitle ,
             C . name ,
             D.idartlang,
             UNIX_TIMESTAMP( D . lastmodified ) AS lastmodified
          FROM
             ".$cfg["tab"]["cat_tree"]." AS A ,
             ".$cfg["tab"]["cat_lang"]." AS C ,
             ".$cfg["tab"]["cat"]." AS B ,
             ".$cfg["tab"]["cat_art"]." AS E
             INNER JOIN  ".$cfg["tab"]["art_lang"]." AS D  ON ( E . idart  =  D . idart )
          WHERE
                A . idcat  =  B . idcat
            AND B . idcat  =  C . idcat
            AND C . idcat  =  E . idcat
            AND B . idclient  = '".$client."'
            AND C . idlang  = '".$lang."'
            AND D . idlang  = '".$lang."'
            AND C . visible  = '1'
            AND E . idcatart IS NOT NULL
            AND D . online = '1'
            ".$weiterleitungen."
            ".$dontshow."
          ORDER BY
            A . idtree, E . idart";


if ($db->f("idartlang") == $db->f("startidartlang")) {  
 // Wenn Startartikel gebe nur Kategorie aus
    $link = ModRewrite::build_new_url("?idcat=$linkcat");
    } else {
// Wenn kein Startartikel gebe nur Artikel aus
    $link = ModRewrite::build_new_url("?idart=$linkid");
    }  
Gruß
René

Re: Hilfe Google Sitemap u. Mehrsprachigkeit

Verfasst: Di 22. Nov 2011, 14:53
von volupp11
Ich wußte, ich bin zu blöd. Vielen Dank.