Page 1 of 2
{NAV_ROW:CURRENT:0} - Links verändern
Posted: Thu 16. Apr 2009, 08:30
by RuffY
Hallo phpwcms-Gemeinde,
ich bin relativ frisch mit phpwcms unterwegs und habe es geschafft mein eigenes Template mit YAML zu basteln.
Neben einer "normalen" Navigation setzte ich nun {NAV_ROW:CURRENT:0} für die untergeordnete Navigation ein.
Damit diese Navigation zu meinem Design passt, wollte ich die Farben usw. anpassen, was bei der Größe wie in der Doku beschrieben bereits funktioniert hat:
Code: Select all
// row based navigation
$template_default['nav_row']['before'] = '<p style="color:#000000;text-decoration:none;font-size:x-small;">';
$template_default['nav_row']['after'] = '<p style="color:#000000;text-decoration:none;font-size:x-small;">';
$template_default['nav_row']['between'] = ' | ';
$template_default['nav_row']['link_before'] = '';
$template_default['nav_row']['link_after'] = '';
$template_default['nav_row']['link_before_active'] = '<p style="color:#000000;text-decoration:none;font-size:x-small;">';
$template_default['nav_row']['link_after_active'] = '';
$template_default['nav_row']['link_direct_before'] = '';
$template_default['nav_row']['link_direct_after'] = '';
$template_default['nav_row']['link_direct_before_active'] = '';
$template_default['nav_row']['link_direct_after_active'] = '';
Könnt ihr mir für Farbe usw. weiterhelfen?
MfG
Ruffy
Re: {NAV_ROW:CURRENT:0} - Links verändern
Posted: Thu 16. Apr 2009, 09:00
by flip-flop
Hallo,
Setze doch einfach einmal einige Parameter ein und schau dann in den generierten Quelltext wo und wie die erscheinen.
Wenn klar ist was du an welcher Stelle brauchst, kannst du entsprechende Klassen anlegen bzw. wenn es reicht direkt style Anweisungen absetzen.
Knut
Re: {NAV_ROW:CURRENT:0} - Links verändern
Posted: Thu 16. Apr 2009, 09:52
by RuffY
Hallo Knut,
danke für deine Antwort, die CSS-Anweisungen sind aber richtig, oder? Folgendes wird generiert:
Code: Select all
<p style="color:#000000;text-decoration:none;font-size:x-small;"><a href="index.php?formular">Formular</a><p style="color:#000000;text-decoration:none;font-size:x-small;">
Trotz des richtig generierten Codes, wird der Link in einem blau angezeigt, nicht in schwarz?
MfG
Ruffy
Re: {NAV_ROW:CURRENT:0} - Links verändern
Posted: Thu 16. Apr 2009, 10:43
by breitsch
Du definierst ja nur den Inhalt des Paragaraf's in Deiner Navigation. Dort liegen aber a-tag die ihre Definitionen als normales html tag aus der frontend.css beziehen.
Du musst explizit definieren dass Du die a-tags innerhalb deines Navigationsparagrafen, anders formatieren willst.
schöner wäre:
Code: Select all
$template_default['nav_row']['before'] = '<p class="nav_row">';
$template_default['nav_row']['after'] = '</p>';
$template_default['nav_row']['between'] = ' | ';
$template_default['nav_row']['link_before'] = '';
$template_default['nav_row']['link_after'] = '';
$template_default['nav_row']['link_before_active'] = '<p class="nav_row_active">';
$template_default['nav_row']['link_after_active'] = '</p>';
ev. noch schöner wären <div> oder <span> tags anstelle der <p>
Code: Select all
/*generelle Formatierung des Paragrafen*/
.nav_row{
}
/*Formatierung der Links innerhalb des Navigationsparagrafen*/
.nav_row a, .nav_row a:link, .nav_row a:active, .nav_row a:visited {
font-family: Verdana, Helvetica, Arial, sans-serif;
font-size: 10px;
color: #000000;
font-weight: normal;
text-decoration: none;
}
.nav_row a:hover {
text-decoration: none;
color: #FF0000;
}
.nav_row_active, .nav_row_active a, .nav_row_active a:link, .nav_row_active a:active, .nav_row_active a:visited, .nav_row_active a:hover {
font-family: Verdana, Helvetica, Arial, sans-serif;
font-size: 10px;
color: #4A5966;
font-weight: bold;
text-decoration: none;
}
Re: {NAV_ROW:CURRENT:0} - Links verändern
Posted: Mon 20. Apr 2009, 22:46
by RuffY
Vielen Dank für die Hilfe!
Jetzt habe ich jedoch noch ein Problem mit der Darstellung der Navi-Ebenen.
Im Augenblick habe ich die Navigation per Yaml-Integration und die Untergeordnete Navi wollte ich per {NAV_ROW:CURRENT:0} realisieren.
Bsp.: Contact (Hauptmenüpunkt) > Formular (untergeordneter Punkt)
Die individuelle untergeordnete Navigation wird auch abgebildet, jedoch sobald der Link genutzt wird verschwindet dieser aktive Menüpunkt.
Wie kann ich dies ändern?
MfG
RuffY
Re: {NAV_ROW:CURRENT:0} - Links verändern
Posted: Tue 21. Apr 2009, 00:26
by breitsch
Re: {NAV_ROW:CURRENT:0} - Links verändern
Posted: Tue 21. Apr 2009, 08:45
by RuffY
Danke für den Tipp!
Ich habe das ganze jetzt einmal probiert, wie in dem Post beschrieben. Jetzt resultiert daraus jedoch ein anderes Problem.
Da das sehr schwer zu beschreiben ist und ich leider nicht sehen kann, woher das Problem kommt, mal meine Adresse:
http://www.sebastianruff.de/phpwcms/index.php
Die angedachte Sub-Navi funktioniert leider nicht so, wie es geplant war. Es werden jetzt auf allen Seiten, wo keine Sub-navi vorhanden ist, an dessen Stelle die Hauptnavi eingeblendet.
Wie kann ich den Code aus dem anderen Poste entsprechend anpassen?
MfG
Ruffy
Re: {NAV_ROW:CURRENT:0} - Links verändern
Posted: Tue 21. Apr 2009, 10:08
by breitsch
Code: Select all
if(isset($GLOBALS['LEVEL_ID'][2])) {
if ($found==true) {
echo '{NAV_ROW:CURRENT:0}';
} else {
echo '{NAV_ROW:'.$GLOBALS[content][struct][$GLOBALS[content][cat_id]][acat_struct].':0}';
}
}
Ich kenne Deine Struktur nicht genau, sollte aber so hinhauen.
Re: {NAV_ROW:CURRENT:0} - Links verändern
Posted: Tue 21. Apr 2009, 20:44
by RuffY
Hallo breitsch,
ich habe nun folgenden Code dort stehen, der jedoch nun bewirkt, dass keine Navi angezeigt wird (siehe Adresse aus dem Post).
folgendes habe ich dort stehen:
Code: Select all
[PHP]foreach ($GLOBALS[content][struct] as $key => $value){
if($value[acat_struct] == $GLOBALS[content][cat_id]) {
$found=true;
}
}
if(isset($GLOBALS['LEVEL_ID'][2])) {
if ($found==true) {
echo '{NAV_ROW:CURRENT:0}';
} else {
echo '{NAV_ROW:'.$GLOBALS[content][struct][$GLOBALS[content][cat_id]][acat_struct].':0}';
}
}
[/PHP]
Zum besseren Verständnis, so sieht meine Seitenstruktur aus:
Ich hoffe, dass es eine gute Lösung für das Problem gibt!
MfG
Ruffy
Re: {NAV_ROW:CURRENT:0} - Links verändern
Posted: Tue 21. Apr 2009, 21:41
by breitsch
OK, I see!
Versuchs mit:
Code: Select all
[PHP]foreach ($GLOBALS[content][struct] as $key => $value){
if($value[acat_struct] == $GLOBALS[content][cat_id]) {
$found=true;
}
}
if(isset($GLOBALS['LEVEL_ID'][2]) || $found==true) {
if ($found==true) {
echo '{NAV_ROW:CURRENT:0}';
} else {
echo '{NAV_ROW:'.$GLOBALS[content][struct][$GLOBALS[content][cat_id]][acat_struct].':0}';
}
}
[/PHP]
Ich verstehe zwar immer noch nicht ganz den Nutzen davon.
Beachte, dass Du damit eigentlich nur ein zweistufiges Menu sinnvoll hinkriegst, weil wenn Du dich z.B. in die dritte Ebene klickst, dann hast Du keine Möglichkeit in die zweite zurückzukehren, weil die nicht mehr da steht. Du musst dann wieder im Top-Menu beginnen, das würde Deine User aber gewaltig verwirren.
Re: {NAV_ROW:CURRENT:0} - Links verändern
Posted: Tue 21. Apr 2009, 21:54
by RuffY
Danke für deine tatkräftige Unterstützung!
Nun sieht die Navigation schon sehr gut aus, jedoch wird bei angeklicktem Zustand der Navigationspunkt etwas nach untern verschoben und etwas kleiner. Wie kann ich diese Änderung weiter beeinflussen?
Ich bin mir bewusst, dass ich evt. nicht die beste Lösung für die Navigation gewählt habe.
Gibt es denn in Verbindung mit YAML noch eine elegantere Lösung die Navigation einzubauen ohne große Veränderungen im Layout?
Ich bin offen für Vorschläge jeglicher Art!
MfG
Ruffy
Re: {NAV_ROW:CURRENT:0} - Links verändern
Posted: Fri 24. Apr 2009, 16:50
by RuffY
Ich wollte noch mal auf meine vorherigen Post aufmerksam machen.
Die Umgestaltung des Sub-Menüs bereitet weiterhin bei mir Probleme, da sobald ich ein mit dem Formular auf gleicher ebene stehendes Strukturelement anlege ein Problem mit der Darstellung bekomme (siehe
http://www.sebastianruff.de/phpwcms/index.php?formular) Ich bräuchte im idealen Falle eine bessere Lösung der Navigation mit einem Main Menü und einem Submenü, welches nicht allzu schwer einzubinden ist.
Könnt ihr weiterhelfen?
Mfg
RuffY
Re: {NAV_ROW:CURRENT:0} - Links verändern
Posted: Fri 24. Apr 2009, 17:47
by flip-flop
Hi,
du verwendest an dieser Stelle für jeden Link einen <p> Tag (weshalb auch immer)
Daher rührt dein Problem.
Knut
Re: {NAV_ROW:CURRENT:0} - Links verändern
Posted: Fri 24. Apr 2009, 18:26
by breitsch
Schick mir Deine conf.template_default.inc und den Header Eintrag im Template
am Besten PM
Re: {NAV_ROW:CURRENT:0} - Links verändern
Posted: Sun 26. Apr 2009, 12:30
by breitsch
conf.template_default.inc
Code: Select all
// row based navigation
$template_default['nav_row']['before'] = '<div class="nav_row">';
$template_default['nav_row']['after'] = '</div>';
$template_default['nav_row']['between'] = '<span class="nav_row_delim"> | </span>';
$template_default['nav_row']['link_before'] = '<span class="nav_row_normal">';
$template_default['nav_row']['link_after'] = '</span>';
$template_default['nav_row']['link_before_active'] = '<span class="nav_row_active">';
$template_default['nav_row']['link_after_active'] = '</span>';
$template_default['nav_row']['link_direct_before'] = '';
$template_default['nav_row']['link_direct_after'] = '';
$template_default['nav_row']['link_direct_before_active'] = '';
$template_default['nav_row']['link_direct_after_active'] = '';
frontend.css
Code: Select all
.nav_row{
/*hier ev. die Breite begrenzen je nach Hintergrundbild*/
/*width:00px;*/
}
.nav_row_normal{
}
.nav_row_normal a, .nav_row_normal a:link, .nav_row_normal a:active, .nav_row_normal a:visited {
line-height:20px;
color:#636363;
font-weight:bold;
font-size:11px;
text-decoration:none;
}
.nav_row_normal a:hover {
color:#FF0000;
text-decoration:none;
}
.nav_row_delim{
color:#636363;
}
.nav_row_active{
}
.nav_row_active a, .nav_row_active a:link, .nav_row_active a:active, .nav_row_active a:visited, .nav_row_active a:hover {
line-height:20px;
color:#da9846;
font-weight:bold;
font-size:11px;
text-decoration:none;
}