[phpBB Debug] PHP Warning: in file [ROOT]/ext/tas2580/seourls/event/listener.php on line 213: Undefined array key "FORUM_NAME"
breadcrumb - REDAXO Forum
Hallo,

Wir haben in letzter Zeit festgestellt, dass die Kommunikation via Slack viel schneller und zielführender ist als ein Beitrag im Forum. Aufgrund der neuen und besseren Möglichkeiten der Kommunikation haben wir uns entschlossen das Forum nur noch als Archiv zur Verfügung zu stellen. Somit bleibt es weiterhin möglich hier nach Lösungen zu suchen. Neue Beiträge können nicht mehr erstellt werden.

Wir empfehlen, für deine Fragen/Probleme Slack zu nutzen. Dort sind viele kompetente Benutzer aktiv und beantworten jegliche Fragen, gerne auch von REDAXO-Anfängern! Slack wird von uns sehr intensiv und meistens "rund um die Uhr" benutzt :-)
Selbst einladen kannst Du dich hier: https://redaxo.org/slack/
ppoja
Beiträge: 18
Registriert: 21. Jul 2005, 19:01
Wohnort: Dresden

breadcrumb

14. Okt 2005, 14:58

Hi -

ich habe in Redaxo 2.7 folgenden Code als Navi-Ergänzung, wo ich mich gerade befinde (breadcrumb) nach dem Beispile Start > Unternehmen > Kontakt.

Nun wollte ich das im Redaxo 3 verwenden und der Code funzt nicht mehr.

Kann mir jemand helfen?

Code: Alles auswählen

<?php 

if ($_GET["article_id"] != "") {
// EXPLODE PATH 
$PATH = explode("-",$this->getValue("path")); 


// GET CURRENTS 
if(count($PATH)==1) { 
    $MAIN = $PATH[0]; 
} 
else { 
    $MAIN = $PATH[1]; 
    $SUB01  = $PATH[2]; 
    $SUB02  = $PATH[3]; 
} 


$sitePath = ""; 

foreach (OOCategory::getRootCategories() as $LEVEL00) { 
   if ($LEVEL00->getId() == $MAIN) { 
      
     $sitePath .= '<a href="'.$LEVEL00->getUrl().'">'.$LEVEL00->getName().'</a>'; 
        
      foreach ($LEVEL00->getChildren() as $LEVEL01 ): 
         if ($LEVEL01->getId() == $SUB01 ) 
            $sitePath .= ' &nbsp; > <a href="'.$LEVEL01->getUrl().'">'.$LEVEL01->getName().'</a>'; 
      endforeach; 


   } 
}    




// Wenn eine Unterseite gewählt wurde, die nicht die Startseite ist, 
// dann SitePath um diese Seite erweitern 

// Artikel-Objekt 
$artid = OOArticle::getArticleById ($_GET['article_id']); 

// Kategorie des gewählten Artikels ermitteln 
$kategorie_id = $artid->getCategory (); 

// Startartikel dieser Kategorie ermitteln (=Objekt) 
$startartikel = $kategorie_id->getStartArticle(); 

// ID des Startartikels ermitteln 
$startartikel_id = $startartikel->getID(); 


// Wenn der ausgewählte Artikel nicht der Startartikel ist, dann Link anzeigen 
if ($_GET['article_id'] !=$startartikel_id) { 
$sitePath .= '&nbsp; > <a href="'.$artid->getUrl ().'">'.$artid->getName().'</a>'; 
} 
}
        
?>
            <?
echo $sitePath; 
?>

Benutzeravatar
Markus.Staab
Entwickler
Beiträge: 9634
Registriert: 29. Jan 2005, 15:50
Wohnort: Aschaffenburg/Germany
Kontaktdaten: ICQ Website

14. Okt 2005, 16:04

Hi ppoja,

Ich hab zwar deinen Code jetzt nicht nach Fehlern durchgesehen, aber eine Breadcrumb Navi kann man mit REDAXO 3 ganz einfach realisieren:

Code: Alles auswählen

 <?php
    $article = OOArticle::getArticleById($this->getValue('article_id'));
    $tree = $article->getParentTree();

    if ( is_array( $tree))
    {
      $numTree = count( $tree);

      echo "<ul class='breadcrumb'>\n";

      for( $i = 0; $i<$numTree;$i++)
      {
        $art = $tree[ $i];
        $class = ($i -1) == $numTree ? ' class="last"' : '';
        echo "<li". $class .">". $art->toLink() ."</li>\n";
      }

      echo "</ul>\n";
    }
  ?> 
Dazu benötigst du die Datei include/classes/ooredaxo.inc.php aus dem CVS.

Das ganze befindet sich jetzt auch auf der Downloadseite für Templates:

Breadcrumb Navigations-Modul

Gruß,
Markus

ppoja
Beiträge: 18
Registriert: 21. Jul 2005, 19:01
Wohnort: Dresden

14. Okt 2005, 17:49

Hi Markus -

danke für den Tipp. die class.ooredaxo.inc.php ist ja standardmässig mit dabei und irgenwo auch per include eingebunden.

Oder hab ich da was falsch gedeutet?

er meckert mir trotzdem mit
Fatal error: Call to undefined method OOArticle::getParentTree() in C:\apachefriends\xampp\htdocs\ght\redaxo\include\classes\class.article.inc.php(381) : eval()'d code on line 54
hast du noch ne Idee?

Grüsse

ppoja

snookie
Beiträge: 11
Registriert: 9. Okt 2005, 15:02
Wohnort: Bad Oeynhausen
Kontaktdaten: ICQ

15. Okt 2005, 13:16

Jap hast du :)

Code: Alles auswählen

Dazu benötigst du die Datei include/classes/ooredaxo.inc.php aus dem CVS. 
Die Version aus dem CVS ist eine andere, als die, die in der Downloadversion vorhanden ist. Dort ist nämlich auch die Funktion OOArticle::getParentTree() vorhanden :)

Also -> Datei aus dem CVS verwenden.

Benutzeravatar
Markus.Staab
Entwickler
Beiträge: 9634
Registriert: 29. Jan 2005, 15:50
Wohnort: Aschaffenburg/Germany
Kontaktdaten: ICQ Website

15. Okt 2005, 13:23

Hi,
snookie hat geschrieben: Die Version aus dem CVS ist eine andere, als die, die in der Downloadversion vorhanden ist. Dort ist nämlich auch die Funktion OOArticle::getParentTree() vorhanden :)

Also -> Datei aus dem CVS verwenden.
jep, genau das ist es...

Wie man das CVS verwendet findest du in der Dokumentation:
http://www.redaxo.de/46-0-ccvs.html

Da du aber nur eine Datei brauchst, kannst du diese ganz einfach via CVS Browserdownloaden.

Die benötigst die neuste Version der include/classes/ooredaxo.inc.php



Gruß,
Markus

ppoja
Beiträge: 18
Registriert: 21. Jul 2005, 19:01
Wohnort: Dresden

17. Okt 2005, 10:43

Danke für die Post, langsam komm ich dahinter, wo ich was finde.

Aber ich muss jetzt mal ins kleine gehen. Unter include/classes/ gibt es keine ooredaxo.inc.php sondern eine class.ooredaxo.inc.php

Ich bin davon ausgegangen das ihr die meint, die hat aber die Funtion OOArticle::getParentTree() nicht drin in der letzten version 1.18 von vor 4 Wochen.

Also habe ich die Datei ooradaxo.inc.php gesucht, die ich aber nicht gefunden habe.

Könnt ihr mir den final cut geben?

Danke für die Antworten

ppoja

Benutzeravatar
Markus.Staab
Entwickler
Beiträge: 9634
Registriert: 29. Jan 2005, 15:50
Wohnort: Aschaffenburg/Germany
Kontaktdaten: ICQ Website

17. Okt 2005, 15:42

Hi ppoja
ppoja hat geschrieben:Danke für die Post, langsam komm ich dahinter, wo ich was finde.

Aber ich muss jetzt mal ins kleine gehen. Unter include/classes/ gibt es keine ooredaxo.inc.php sondern eine class.ooredaxo.inc.php

Ich bin davon ausgegangen das ihr die meint, die hat aber die Funtion OOArticle::getParentTree() nicht drin in der letzten version 1.18 von vor 4 Wochen.

Also habe ich die Datei ooradaxo.inc.php gesucht, die ich aber nicht gefunden habe.

Könnt ihr mir den final cut geben?
Sorry, fehler von mir.
Die Datei heisst class.ooarticle.inc.php.

Gruß,
Markus

Zurück zu „Allgemeines [R3]“