Navigation mit der Projektstruktur
Navigation mit der Projektstruktur
Hallo ConPresso-Fans,
nachdem ich einige Mails zu meiner Anmerkung zur Navigation im Artikel "Barrierefrei" (http://www.conpresso.de/conpresso/phoru ... =154&t=154) bekommen habe, hier der Ansatz, den ich gegangen bin.
Voraussetzung:
1) Die Projektstruktur ist gepflegt.
2) Es werden NUR Haupt- und Unternavigation verwendet, also nur 2 Ebenen.
3) Die Hauptnavigation wird manuell gepflegt.
Zur korrekten Positionierung verwende ich CSS. Das ganze müsste aber auch in Tabellen funktionieren.
Ich habe folgenden Teile in die global_header.php eingefügt:
Hauptmenü
=======
<ul class="navi">
<li><a href="../de_hm1/"<?PHP if ($Rubric_id == 17) { printf('class="here"'); } ?>>hm1</a></li>
<li><a href="../de_hm2/"<?PHP if ($Rubric_id == 16) { printf('class="here"'); } ?>>hm2</a></li>
<li><a href="../de_hm3/"<?PHP if ($Rubric_id == 15) { printf('class="here"'); } ?>>hm3</a></li>
</ul>
Dieser Teil "<?PHP if ($Rubric_id == 15) { printf('class="here"'); } ?>" ist nur dazu da, um den aktuellen Hauptmenü-Punkt hervorzuheben.
Untermenü
=======
<?php
$db = new DB;
$query ='SELECT cpo_rubric_1.rubrik AS rubrik, cpo_rubric_1.header AS header FROM ( cpo_tree INNER JOIN cpo_rubric ON cpo_tree.parent = cpo_rubric.zuordnung ) INNER JOIN cpo_rubric AS cpo_rubric_1 ON cpo_tree.id = cpo_rubric_1.zuordnung WHERE cpo_rubric.id = '.$Rubric_id;
$db->query($query);
$rows = $db->num_rows();
printf( '<ul class="subnavi">' );
while ( $rows > 0) {
$db->next_record();
printf('<li><a href="../%s/index.php">%s</a></li>', $db->v('rubrik'), $db->v('header'));
$rows--;
}
printf( '</ul> <!-- subnavi -->' );
?>
Auto-Edit: Link veraltet - neuer Link: http://community.conpresso.de/viewtopic.php?t=1112#5409
nachdem ich einige Mails zu meiner Anmerkung zur Navigation im Artikel "Barrierefrei" (http://www.conpresso.de/conpresso/phoru ... =154&t=154) bekommen habe, hier der Ansatz, den ich gegangen bin.
Voraussetzung:
1) Die Projektstruktur ist gepflegt.
2) Es werden NUR Haupt- und Unternavigation verwendet, also nur 2 Ebenen.
3) Die Hauptnavigation wird manuell gepflegt.
Zur korrekten Positionierung verwende ich CSS. Das ganze müsste aber auch in Tabellen funktionieren.
Ich habe folgenden Teile in die global_header.php eingefügt:
Hauptmenü
=======
<ul class="navi">
<li><a href="../de_hm1/"<?PHP if ($Rubric_id == 17) { printf('class="here"'); } ?>>hm1</a></li>
<li><a href="../de_hm2/"<?PHP if ($Rubric_id == 16) { printf('class="here"'); } ?>>hm2</a></li>
<li><a href="../de_hm3/"<?PHP if ($Rubric_id == 15) { printf('class="here"'); } ?>>hm3</a></li>
</ul>
Dieser Teil "<?PHP if ($Rubric_id == 15) { printf('class="here"'); } ?>" ist nur dazu da, um den aktuellen Hauptmenü-Punkt hervorzuheben.
Untermenü
=======
<?php
$db = new DB;
$query ='SELECT cpo_rubric_1.rubrik AS rubrik, cpo_rubric_1.header AS header FROM ( cpo_tree INNER JOIN cpo_rubric ON cpo_tree.parent = cpo_rubric.zuordnung ) INNER JOIN cpo_rubric AS cpo_rubric_1 ON cpo_tree.id = cpo_rubric_1.zuordnung WHERE cpo_rubric.id = '.$Rubric_id;
$db->query($query);
$rows = $db->num_rows();
printf( '<ul class="subnavi">' );
while ( $rows > 0) {
$db->next_record();
printf('<li><a href="../%s/index.php">%s</a></li>', $db->v('rubrik'), $db->v('header'));
$rows--;
}
printf( '</ul> <!-- subnavi -->' );
?>
Auto-Edit: Link veraltet - neuer Link: http://community.conpresso.de/viewtopic.php?t=1112#5409
Re: Navigation mit der Projektstruktur
Hi Ralf,
die Frage nach der Navigation hat sich erledigt. Habe gerade Deinen Beitrag dazu entdeckt
Danke
Lufine
die Frage nach der Navigation hat sich erledigt. Habe gerade Deinen Beitrag dazu entdeckt
Danke
Lufine
Re: Navigation mit der Projektstruktur
Hab´s unterhalb des Body-Tags in den global_header.php eingebunden und erhalte folgende Fehlermeldung:
hm1
hm2
hm3
Database error: Invalid SQL: SELECT cpo_rubric_1.rubrik AS rubrik, cpo_rubric_1.header AS header FROM ( cpo_tree INNER JOIN cpo_rubric ON cpo_tree.parent = cpo_rubric.zuordnung ) INNER JOIN cpo_rubric AS cpo_rubric_1 ON cpo_tree.id = cpo_rubric_1.zuordnung WHERE cpo_rubric.id = 7
MySQL Error: 1146 (Table 'akf.cpo_tree' doesn't exist)
Session halted.
Hast Du ´ne Idee, woran das liegt? Sorry, hab von PHP nicht allzu viel bzw. keine Ahnung und verstehe nur Bahnhof...
hm1
hm2
hm3
Database error: Invalid SQL: SELECT cpo_rubric_1.rubrik AS rubrik, cpo_rubric_1.header AS header FROM ( cpo_tree INNER JOIN cpo_rubric ON cpo_tree.parent = cpo_rubric.zuordnung ) INNER JOIN cpo_rubric AS cpo_rubric_1 ON cpo_tree.id = cpo_rubric_1.zuordnung WHERE cpo_rubric.id = 7
MySQL Error: 1146 (Table 'akf.cpo_tree' doesn't exist)
Session halted.
Hast Du ´ne Idee, woran das liegt? Sorry, hab von PHP nicht allzu viel bzw. keine Ahnung und verstehe nur Bahnhof...
Re: Navigation mit der Projektstruktur
cpo ist die "Standard"-Tabellenerweiterung, falls die bei dir akf ist müsste z.B. cpo_rubrik_1.rubrik in akf_rubrik_1.rubrik getauscht werden.
Re: Navigation mit der Projektstruktur
Ich hab erst versucht jedes "cpo_" durch "akf.cpo_" zu ersetzen, aber das hat auch nicht funktioniert.
Hab dann zur Sicherheit nochmal in phpMyAdmin nachgeguckt: die Standard-Tabellenerweiterung habe ich nicht verändert. Die Tabellen haben alle den Prefix "cpo_", aber die Datenbank hat den Namen "AKF".
Helfen die Infos weiter?
Gruß
Lufine
Hab dann zur Sicherheit nochmal in phpMyAdmin nachgeguckt: die Standard-Tabellenerweiterung habe ich nicht verändert. Die Tabellen haben alle den Prefix "cpo_", aber die Datenbank hat den Namen "AKF".
Helfen die Infos weiter?
Gruß
Lufine
Re: Navigation mit der Projektstruktur
Der DB-Name taucht eigentlich garnicht auf.
Hast du denn überhaupt die cpo_tree-Tabelle? Die wird ja laut Fehlermeldung vermisst .
Hast du denn überhaupt die cpo_tree-Tabelle? Die wird ja laut Fehlermeldung vermisst .
Re: Navigation mit der Projektstruktur
Ja, cpo_tree gibt´s - und hat sogar Inhalt
Die Projektstruktur habe ich beim Einrichten von Conpresso angelegt.
Gruß
Lufine
Die Projektstruktur habe ich beim Einrichten von Conpresso angelegt.
Gruß
Lufine
Re: Navigation mit der Projektstruktur
Manchmal hilft es, die vorhanden Variablen zu nutzen . Besser ist folgendes SQL-Statement:
$query ='SELECT '.$dbPrefix.'_rubric_1.rubrik AS rubrik, '.$dbPrefix.'_rubric_1.header AS header FROM ( '.$dbPrefix.'_tree INNER JOIN '.$dbPrefix.'_rubric ON '.$dbPrefix.'_tree.parent = '.$dbPrefix.'_rubric.zuordnung ) INNER JOIN '.$dbPrefix.'_rubric AS '.$dbPrefix.'_rubric_1 ON '.$dbPrefix.'_tree.id = '.$dbPrefix.'_rubric_1.zuordnung WHERE '.$dbPrefix.'_rubric.id = '.$Rubric_id;
(Hätte ich auch oben ändern können, aber dann sieht man es nicht so deutlich .)
$query ='SELECT '.$dbPrefix.'_rubric_1.rubrik AS rubrik, '.$dbPrefix.'_rubric_1.header AS header FROM ( '.$dbPrefix.'_tree INNER JOIN '.$dbPrefix.'_rubric ON '.$dbPrefix.'_tree.parent = '.$dbPrefix.'_rubric.zuordnung ) INNER JOIN '.$dbPrefix.'_rubric AS '.$dbPrefix.'_rubric_1 ON '.$dbPrefix.'_tree.id = '.$dbPrefix.'_rubric_1.zuordnung WHERE '.$dbPrefix.'_rubric.id = '.$Rubric_id;
(Hätte ich auch oben ändern können, aber dann sieht man es nicht so deutlich .)
Re: Navigation mit der Projektstruktur
Nur eine kurze Frage:
> Voraussetzung:
> 1) Die Projektstruktur ist gepflegt.
Was heißt das? etwa dass ich unterkategorien den hauptkategorien zugewiesen habe oder ist da was anderes damit gemeint?
schöne grüsse
konki
> Voraussetzung:
> 1) Die Projektstruktur ist gepflegt.
Was heißt das? etwa dass ich unterkategorien den hauptkategorien zugewiesen habe oder ist da was anderes damit gemeint?
schöne grüsse
konki
Re: Navigation mit der Projektstruktur
D.h., dass unter Einstellungen/Projekt-Struktur die Inhalte gepflegt sind.
-
- ConPresso-Checker
- Beiträge: 101
- Registriert: 01.01.1970 01:00
- Hat sich bedankt: 6 Mal
Re: Navigation mit der Projektstruktur
Hallo Ralf,
dank Deiner Hilfe hier im Forum habe ich das mit der dynamischen Navigation auch umsetzen können., es funktioniert auch soweit. Ich hätte dazu jedoch noch eine Frage:
Ich möchte dass die Subnavigation (Sub_News1 oder Sub_News2) weiterhin sichtbar belibt, wenn man auf Sub_News1 oder Sub_News2 klickt und nicht verschwindet.
Siehe: http://fortunato-testserver.de/lra_fo/cms_n/news/
Ich habe Deinen Code im global_header untergebracht.
Vielleicht hast Du einen Tipp für mich?
Grüsse Sandra
dank Deiner Hilfe hier im Forum habe ich das mit der dynamischen Navigation auch umsetzen können., es funktioniert auch soweit. Ich hätte dazu jedoch noch eine Frage:
Ich möchte dass die Subnavigation (Sub_News1 oder Sub_News2) weiterhin sichtbar belibt, wenn man auf Sub_News1 oder Sub_News2 klickt und nicht verschwindet.
Siehe: http://fortunato-testserver.de/lra_fo/cms_n/news/
Ich habe Deinen Code im global_header untergebracht.
Vielleicht hast Du einen Tipp für mich?
Grüsse Sandra
Re: Navigation mit der Projektstruktur
Sehr schön, bitte .
> Ich möchte dass die Subnavigation (Sub_News1 oder Sub_News2) weiterhin sichtbar bleibt ...
Ja, das stört mich auch.
Bisher fehlte mir die Zeit und jetzt würde ich fast lieber auf die neue Conpresso-Version warten .
Idee/Ansatz
cpo_rubric.id in einer Variablen merken
prüfen ob die Variable leer ist (keine Unterseiten mehr da)
gemerkte Variable nehmen (vorherige seite)
> Ich möchte dass die Subnavigation (Sub_News1 oder Sub_News2) weiterhin sichtbar bleibt ...
Ja, das stört mich auch.
Bisher fehlte mir die Zeit und jetzt würde ich fast lieber auf die neue Conpresso-Version warten .
Idee/Ansatz
cpo_rubric.id in einer Variablen merken
prüfen ob die Variable leer ist (keine Unterseiten mehr da)
gemerkte Variable nehmen (vorherige seite)
Re: Navigation mit der Projektstruktur
Lustig, das war doppelt .
Aber ich kann ja meine Artikel nicht löschen, oder?
Beitrag bearbeitet (16.01.04 11:07)
Aber ich kann ja meine Artikel nicht löschen, oder?
Beitrag bearbeitet (16.01.04 11:07)
-
- ConPresso-Checker
- Beiträge: 101
- Registriert: 01.01.1970 01:00
- Hat sich bedankt: 6 Mal
Re: Navigation mit der Projektstruktur
Hallo Ralf,
danke für die rasche Antwort. Nun war ich doch etwas zu schnell. Egal in welche Rubrik ich klicke, es werden immer alle Untermenüpunkte aller Rubriken angezeigt, owohl ich die Projekt-Struktur richtig gepflegt habe und auch die Rubrikeinstellungen passen.
Haupt1
-->sub_haupt1
-->sub_haupt2
News
--> Sub_News1
--> Sub_ News2
usw.
Ich habe auch schon an dem SQL-Statement rumgebastelt, hat aber nix geholfen.
Habe das original das o.g. SQL-Statement verwendet (mit den Variablen)
Siehe: http://fortunato-testserver.de/lra_fo/cms_n/news/
Was mache ich falsch? Verzweifel.....
danke für die rasche Antwort. Nun war ich doch etwas zu schnell. Egal in welche Rubrik ich klicke, es werden immer alle Untermenüpunkte aller Rubriken angezeigt, owohl ich die Projekt-Struktur richtig gepflegt habe und auch die Rubrikeinstellungen passen.
Haupt1
-->sub_haupt1
-->sub_haupt2
News
--> Sub_News1
--> Sub_ News2
usw.
Ich habe auch schon an dem SQL-Statement rumgebastelt, hat aber nix geholfen.
Habe das original das o.g. SQL-Statement verwendet (mit den Variablen)
Siehe: http://fortunato-testserver.de/lra_fo/cms_n/news/
Was mache ich falsch? Verzweifel.....