Willkommen im neuen Forum von concrete5.de.
Die Anmeldung ist ab dem 15.10.2020 nur noch mit E-Mail Adresse und Passwort möglich. Eine Anmeldung mit Benutzername ist nicht mehr möglich.

Diese Nachricht löschen.
Anhang entfernen?
Zurück zur Themenliste
R
reframing 0.png 17.02.2011 17:52

Blogeinträge und Dropdown-Menu

Ich habe auf meiner Seite das Standart-Theme Plain Yoghurt etwas abgeändert und ein Dropdown-Menu eingerichtet (gemäss der Anleitung von ->http://www.codeblog.ch/de/2009/04/concrete5-drop-down-menu/). Das klappt soweit alles wunderbar.


Wenn ich nun eine neue Seite für einen Blogeintrag erstelle, erscheint diese als Unterpunkt im Dropdown-Menu „Blog“. Das möchte ich natürlich nicht. Wenn ich nun die Seite von der Navigation ausschliesse, erscheint sie wie gewünscht im Blogmenu nicht mehr, allerdings wird der Eintrag auch nicht mehr im monatlichen Archiv in der Sidebar angezeigt. 


Gibt es eine Möglichkeit, Blogeinträge nicht im Dropdown-Menu erscheinen zu lassen und den Eintrag im Monatsarchiv bestehen zu lassen?

R
Remo 0.png 19.02.2011 17:26
Ja, diese Möglichkeit gibt's. Wie gut kennst du dich mit PHP aus?
Du hast ja in blocks/autonav/templates/.../ eine Datei mit der du das eigene Layout für den Autonav-Block bestimmt. Dort findest du eine solche Zeile:
> if (!$_c->getCollectionAttributeValue('exclude_nav')) {
exclude_nav ist das "handle" des Attributes. Momentan verwenden beide Navigationen dasselbe Attribute, deswegen der unerwünschte Effekt. Wenn du aber in einem der beiden Autonav Block Template das Handle des Attributes anpasst, kannst du es problemlos getrennt steuern!
R
reframing 0.png 20.02.2011 15:27
Herzlichen Dank Remo für die schnelle Antwort!
Von PHP habe ich eigentlich keinen grossen Plan. Den autonav-Block habe ich mal so belassen wie er ist. An sich bin ich ja an anderer Stelle froh, wenn ich Seiten von der Navigation ausschliessen kann.Ich habe dafür den date_nav-Block vom block-Ordner im concrete-Verzeichnis in den block-Ordner ausserhalb des concrete-Verziechnisses kopiert und dort bei der controller.php die folgenden Zeilen gelöscht:
$pl->filterByAttribute('exclude_nav',false);
if ($row['cParentID'] != 0) { $pl->filterByParentID($cParentID); }
Nun funktionierts wie gewünscht. Ich hoffe einfach, dass ich da nicht grundlegend was falsch gemacht habe, dass ich an anderer Stelle Probleme erhalte mit der Löschung der Zeilen.
R
Remo 0.png 21.02.2011 09:34
Ich bin davon ausgegangen dass du zwei autonav-Blöcke hast. Dann hättest du ein eigenes Template erstellen müssen.
Mit date_nav geht's natürlich auch. Das einzige was wichtig ist, hast du gemacht, File aus concrete wegkopiert damit's bei einem zukünftigen Update keine Probleme gibt!
Spontan versteh ich nicht wieso du den "Parent-Filter" auch entfernt hast. Damit ist's wohl nicht mehr möglich eine Seite auszuwählen, von welcher die Unterseite angezeigt werden. Wenn du diese Funktionalität aber nicht benötigst, ist dies natürlich kein Problem!
R
reframing 0.png 23.02.2011 18:23
Naja, ich suchte einfach die Stelle mit dem "exclude_nav" und dachte, die Zeilen des "Parent-Filter" gehört" da auch dazu.Ich habe jetzt die Zeilen des "Parent-Filters" wieder hinzugefügt und einfach "false" bei "exclude_nav" durch "true" ersetzt.
Funktioniert soweit auch, obwohl ich nicht weiss, was ich gemacht habe (Wohl die Horroraussage für jeden Programmierer ;-)  ).
J
Janus-FXTrading 0.png 21.09.2014 18:15
Hallo, vielen Dank erst einmal! Ich habe das Problem auch hier: http://www.smartestfinance.com/heavy-fx-forex-trading-trader-blog/ Da ich viel blogge, zuvor in einem Wordpress-Blog, kann ich Drop Down auch nicht so gut gebrauchen. Ich habe von PHP wenig Ahnung, deswegen würde ich es gern wie der User reframing lösen. Mein Problem: Das ist alles, was in meinem Controller.php steht. Ich gehe den Pfad /html/concrete/blocks/date_nav und dann Controller.php. Gibt es da eine Lösung? Vielen Dank im Voraus. <?php defined('C5_EXECUTE') or die("Access Denied."); class DateNavBlockController extends Concrete5_Controller_Block_DateNav { }

Nachricht hinzufügen