Navigation_Meta - Startartikel der Unterkategorie anzeigen?

Gesperrt
beloved_behated
Beiträge: 55
Registriert: Mi 25. Nov 2009, 16:08
Kontaktdaten:

Navigation_Meta - Startartikel der Unterkategorie anzeigen?

Beitrag von beloved_behated »

Hallo,

ich stehe vor einem Problem. Wenn meine Navigation eine Kategorie mit mehreren Unterkategorien hat, aber keinen Startartikel, kann ich das irgendwie realisieren, dass er dann den Startartikel der 1. Unterkategorie wählt?
Die Erstellung eines Startartikels mit Weiterleitung kommt nicht in Frage, da ich ein Inhaltsverzeichnis für Kategorien erstellt habe und möchte nun nicht das ein Startartikel in der Oberkategorie ausgelesen wird. Es gibt allerdings auch Kategorien in denen keine Unterkategorien sind und ich die Startartikel auslesen muss.
Kann mir da jemand helfen?
beloved_behated
Beiträge: 55
Registriert: Mi 25. Nov 2009, 16:08
Kontaktdaten:

Re: Navigation_Meta - Startartikel der Unterkategorie anzeigen?

Beitrag von beloved_behated »

Habe gerade eine Lösung gefunden!
Ich lese als erstes aus ob ein Startartikle in der Kategorie existiert. Wenn nicht lese ich die Unterkategorien der Kategorie aus und wähle den Startartikel der 1. Unterkategorie.

diesen code:

Code: Alles auswählen

            if ($cfg['url_builder']['name'] == 'front_content') {
                $aParams = array('lang' => $lang, 'idcat' => $oContenidoCategory->getIdCat());
            } else {
                $aParams = array('a' => $oContenidoCategory->getIdCat(), 
                                'idcat' => $oContenidoCategory->getIdCat(), // needed to build category path
                                'lang' => $lang, // needed to build category path
                                'level' => 0); // needed to build category path
            }
            try {
                $tpl->set('d', 'url', Contenido_Url::getInstance()->build($aParams));
            } catch (InvalidArgumentException $e) {
                $tpl->set('d', 'url', 'front_content.php?idcat='.$oContenidoCategory->getIdCat());
            }
durch diesen ersetzen:

Code: Alles auswählen

            $oArticleCollection = new ArticleCollection(array("idcat" => $oContenidoCategory->getIdCat(), "start" => "true"));
            $oStartartikel = $oArticleCollection->startArticle();
            
            
            
            if(!$oStartartikel->getField("idart")) {
                $unterkategorien = $oFeNav->getSubCategories($oContenidoCategory->getIdCat(), true);
                $unterkategorie = $unterkategorien[0];
                 
                if ($cfg['url_builder']['name'] == 'front_content') {
                    $aParams = array('lang' => $lang, 'idcat' => $unterkategorie->getIdCat());
                } else {
                    $aParams = array('a' => $unterkategorie->getIdCat(),
                                    'idcat' => $unterkategorie->getIdCat(), // needed to build category path
                                    'lang' => $lang, // needed to build category path
                                    'level' => 0); // needed to build category path
                }
                try {
                    $tpl->set('d', 'url', Contenido_Url::getInstance()->build($aParams));
                } catch (InvalidArgumentException $e) {
                    $tpl->set('d', 'url', 'front_content.php?idcat='.$unterkategorie->getIdCat());
                }
                 
            }else {

            
                if ($cfg['url_builder']['name'] == 'front_content') {
                    $aParams = array('lang' => $lang, 'idcat' => $oContenidoCategory->getIdCat());
                } else {
                    $aParams = array('a' => $oContenidoCategory->getIdCat(),
                                    'idcat' => $oContenidoCategory->getIdCat(), // needed to build category path
                                    'lang' => $lang, // needed to build category path
                                    'level' => 0); // needed to build category path
                }
                try {
                    $tpl->set('d', 'url', Contenido_Url::getInstance()->build($aParams));
                } catch (InvalidArgumentException $e) {
                    $tpl->set('d', 'url', 'front_content.php?idcat='.$oContenidoCategory->getIdCat());
                }
            
            }

Falls jemand noch eine bessere Lösung hat kann er ja schreiben!;)
mfweb
Beiträge: 270
Registriert: Mo 12. Sep 2005, 18:31
Kontaktdaten:

Re: Metanavigation - Startartikel von Unterkategorie?

Beitrag von mfweb »

Immer mal ein Blick wert: Contenido Wiki ... auch schreibender Zugriff ist erlaubt!
Dodger77
Beiträge: 3626
Registriert: Di 12. Okt 2004, 20:00
Wohnort: Voerde (Niederrhein)
Kontaktdaten:

Re: Navigation_Meta - Startartikel der Unterkategorie anzeigen?

Beitrag von Dodger77 »

Richtig, deshalb habe ich den anderen Thread gelöscht.
Gesperrt