Kontrollausgabe bei fehlerhafter Navigation möglich?

Wie verwendet man Templates oder erstellt Navigationen und passt diese an.

Kontrollausgabe bei fehlerhafter Navigation möglich?

Beitragvon TiCar » 24. Jan 2006, 19:12

Hi,

als Newbie versuche ich mich gerade an der ersten eigenen Navigation. Dafür habe ich jetzt mal eine alte erstellte Webpräsenz hergenommen und versuche die erste Kategorie anhand der Docu mal darzustellen. Leider bisher ohne Erfolg.

Ich orietiere mich dabei an der Demo, so habe ich ein funktionierendes Beispiel und änder dieses nach meinen Wünschen ab. Ich dachte ja ich wäre schon soweit, das ich dieses blicke nur leider bleibt mein Navi leer *gruml*

Gibt es eine Möglichkeit das ich das was ich im Template Navi programmier schrittweise auszugeben - so als Art Debugmeldung? Im eigentlichen Template hab ich ja nur die Zeile
Code: Alles auswählen
<?php print $navLeftCol; ?>
drin, nur wenn da natürlich nichts ausgespuckt wird suche ich jetzt eine Möglichkeit den Fehler zu finden.

Oben ist natürlich auch folgendes drin und hab geprüft ob es diese Datei gibt mit entsprechendem Inhalt.
Code: Alles auswählen
$navTemplateId = "2";
include $REX['INCLUDE_PATH']."/generated/templates/$navTemplateId.template";


Fehlende oder falsche Befehle im Default Template, das die Navi gar nicht herangezogen wird?
Falsche Syntax oder Befehle im Naviteil?

Im Grunde entspricht der Anfang des Default Templates der Demo, deswegen hoffe ich mal dieses ausschließen zu können. Das Template für die Navi aufbauen auf dem der Demo sieht wiefolgt aus:

Code: Alles auswählen
<?php
// Aufteilen des Aufrufpfades
$PATH = explode("|",$this->getValue("path").$this->getValue("article_id")."|");

// Aktuelle werte
$path1 = $PATH[1];
$path2 = $PATH[2];
$path3 = $PATH[3];

// Navigation zurücksetzen
$navLeftCol = '';

/* Hauptmenü */
foreach (OOCategory::getRootCategories() as $lev1) {   // Zuweisung der Hauptmenüpunkte
      
   if( $lev1->isOnline() ):      // Nur die aktiven Menüpunkte darstellen

      if( $lev1->getId() == $path1 ) {      // Dieser Menüpunkt wurde gerade aufgerufen
         $navLeftCol .= '<table class="nav" cellpadding="5"><tr><td><div align="right"><a href="'.$lev1->getUrl().'">'.$lev1->getName().'</a></td></tr></table>';
      }
      else {
         $navLeftCol .= '<table class="nav" cellpadding="5"><tr><td><div align="left"><a href="'.$lev1->getUrl().'">'.$lev1->getName().'</a></td></tr></table>';
      }

   endif;
}
?>


Ich hatte auch schon ohne den PATH getestet, nur das Ergebnis bleibt leider das gleiche :(

Wäre nett wenn ihr mal wieder helfen könnten und ich Redaxo wieder etwas mehr verstehe ;)
Gruß,
Lars
TiCar
 
Beiträge: 250
Registriert: 15. Jan 2006, 09:37

Beitragvon Thomas.Blum » 24. Jan 2006, 19:33

Hej,

du könntest mit

Code: Alles auswählen
print_r($lev1)


testen, ob auch etwas in $lev1 enthalten ist.

thomas

PS. [kopfschüttel]der aufbau deiner navi[/kopfschüttel]
blumbeet - web.studio - Dresden - 0351 217 6225
webbude - Blog über CSS.XHTML.REX
Ein Wunschzettel
Benutzeravatar
Thomas.Blum
Entwickler
 
Beiträge: 4670
Registriert: 24. Aug 2004, 21:11
Wohnort: Dresden

Beitragvon TiCar » 25. Jan 2006, 10:03

tbaddade hat geschrieben:PS. [kopfschüttel]der aufbau deiner navi[/kopfschüttel]


Danke schonmal ;)

Meinst du wegen Tabellen? :lol: [verteidigung-on]Hey, jeder fängt mal wo an und es sieht so schlecht nicht aus. Ich bin ja erst durch Redaxo auf CSS orientiertes Layout gekommen und werds auch zukünftig so machen *schwör*[verteidigung-off]
Gruß,
Lars
TiCar
 
Beiträge: 250
Registriert: 15. Jan 2006, 09:37

Beitragvon serioussimon » 25. Jan 2006, 13:40

TiCar hat geschrieben:Meinst du wegen Tabellen? :lol: [verteidigung-on]Hey, jeder fängt mal wo an und es sieht so schlecht nicht aus. Ich bin ja erst durch Redaxo auf CSS orientiertes Layout gekommen und werds auch zukünftig so machen *schwör*[verteidigung-off]


sorry aber das hat nichts mit css-orientiertem layout zu tun
das was da fabriziert wird ist schlicht und einfach html-müll

Code: Alles auswählen
<table class="nav" cellpadding="5">
    <tr>
        <td>
            <div align="right">
                <a href="#">blabla</a>
        </td>
    </tr>
</table>';


1.) tabellen sollten nicht zu layoutzwecken "missbraucht" werden - denn der grundgedanke von css ist es, den inhalt vom layout zu trennen
2.) es ist völlig planlos jeden einzelnen menüpunkt in eine eigene TABELLE zu packen
3.) ALLE (x)html-tags sollten geschlossen sein (siehe DIV)

es geht nicht nur darum ob es gut aussieht sondern ob es wenigstens halbwegs semantisch korrekt ist. gut aussehende menüs kann ich auch mit unten stehendem beispiel erreichen ...

eine ordentliche navigation sieht meiner meinung nach folgendermaßen aus
Code: Alles auswählen
<ul id="main_navigation">
   <li><a href="#">s</a></li>
   <li><a href="#">y</a>
      <ul id="sub_navigation">
         <li><a href="#">ya</a></li>
         <li><a href="#">yb</a></li>
         <li><a href="#">yc</a></li>
      </ul>
   </li>
   <li><a href="#">z</a></li>
</ul>


und wie schon so oft gepredigt - die grundlagen sollte jeder beherrschen bevor man mit einem cms anfängt:

http://de.selfhtml.org/

mfg simon [kopfschüttel]
FYI: Eine HOMEPAGE ist nur die Startseite einer WEBSITE!
Benutzeravatar
serioussimon
 
Beiträge: 350
Registriert: 11. Okt 2005, 21:32
Wohnort: Bayern

Beitragvon TiCar » 25. Jan 2006, 15:59

Was mich meinem Test eine eigene Navi nachzubauen unheimlich weiter bringt - nämlich kein Stück :(

Hallo Simon,

Deine/eure Kritik ist natürlich gerechtfertig und ich sagte nicht das erste Mal, dass ich zukünftige Projekte sicherlich nicht mehr mit Tabellen gestalte, sondern per CSS (hab ja hier schon einiges gelernt *freu*), nur wäre es nett, wenn ihr es hier mal übersehen könntet, da es sich wie schon gesagt um ein Test handelt ein altes Projekt welches auch mit einem Template erstellt wurde (mit UltraEdit32), auf das Redaxo, auf möglichst einfache Art und Weise anzupassen. D.h. Navi nachbauen, Inhalt über Redaxo ausgeben.
Die komplette Page per CSS nachzubauen und dann mit Redaxo zu machen wäre ein viel zu hoher Aufwand, den ich dann lieber lasse und mich neuen Projekten zuwende bei denen man von 0 anfangen kann.

An dieser Stelle muss ich dann auch mal den Kopf schütteln, wie man eine derart einfach Frage so verkompizieren kann. Scheint aber wohl an mir zu liegen, da es nun schon das 2x vorkommt das ich hier aneck, obwohl ich dachte was einfaches zu fragen. Ich werde mir dann zukünftig auch sparen Codeschnipsel zu präsentieren, wenn sie jedes Mal anstatt auf das Problem einzugehen, dafür sorgen das man völlig vom Thema abkommt.

Über die Art der Kommentierung fällt mir nur eins ein 'Nobody is perfekt' und 'jeder fängt mal wo an' :)

PS: In der richtigen Page war das DIVs natürlich geschlossen und bei Hernn Münz und Herrn Enseleit bin ich fast täglich zu besuch, aber wohl noch nicht oft genug :)
Gruß,
Lars
TiCar
 
Beiträge: 250
Registriert: 15. Jan 2006, 09:37


Zurück zu Templates/Navigationen [R3]

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast

cron