[halbwegs gelöst] Pfadalias und Brotkrumen für "node/add/*" festlegen?
![](http://www.drupalcenter.de/files/noavatar_mini.gif)
am 25.05.2009 - 09:05 Uhr in
Kann man Adressen der Art "node/add/*" mit bestimmten Pfaden und Brotkrumen versehen?
z.B.
Adresse: /node/add/blogbeitrag
Pfadalias: /Blog/Blogbeitrag-erstellen
Anzeige in den "Brotkrumen": Startseite › Blog
Irgendwie ist das blöd, wenn man irgendwo ist, Inhalt erstellen möchte und dann "Startseite › Inhaltsverwaltung › Inhalt erstellen" angezeigt wird. Für nicht Drupal-Versierte ziemlich verwirrend.
Das Pfadalias ist die leichte Übung. Wie sieht's mit der Anzeige in den Brotkrumen aus? Diese Module helfen nicht weiter:
- Custom Breadcrumbs
- Node Breadcrumb
- Taxonomy Breadcrumb (nicht probiert, ist wegen des Namens schon herausgefallen)
Hinweise, Ideen? Kann man so ein Formular vielleicht einfach in eine Seite einbetten?
- Anmelden oder Registrieren um Kommentare zu schreiben
Der normal User sieht nur
am 25.05.2009 - 09:24 Uhr
Der normal User sieht nur "Startseite › Inhalt erstellen". Und dein Vorschlag Startseite › Blog für den Breadcrumb unter node/add/blog wäre verwirrend. Weil man dies dann so auch bei den anderen Erwarten würde zb. "Startseite > Artikel" ?? iiiieeeee :D. Außerdem wäre es kein Breabcrumb mehr sondern ein flaches Menü, was als Breadcrumb getarnt ist.
----------------------------------------
http://tobiasbaehr.de/
Gelöste Forenbeiträge mit [gelöst] im Titel ergänzen
Ein Forum ist kein Ersatz für das www (Google.de).
Hä!? Also noch
am 25.05.2009 - 10:23 Uhr
Hä!?
Also noch einmal:
Situation: Der Nutzer befindet sich in einem Internetseitenbereich, der thematisch eine Einheit bildet; z.B.
Beispiel.de/Blog
. Blöcke, Menüs usw. sind dort eben blogspezifisch andere, als z.B. unterBeispiel.de/Projekt1
.Vom Blogmenü gelangt man über "Beitrag erstellen" auf
Beispiel.de/node/add/blogbeitrag
mit dem AliasBeispiel.de/Blog/Beitrag-erstellen
.Ziel: Für die Seite
Beispiel.de/node/add/blogbeitrag
soll (1.) das Pfadalias verwendet werden (kein Problem, einfach anlegen), und (2.) die Brotkumen korrekt angezeigt werden. So, als befände man sich auf einer gewöhnlichen Seite:Adresse:
Beispiel.de/node/add/blogbeitrag
Pfadalias:
Beispiel.de/Blog/Beitrag-erstellen
Brotkrumen: "Startseite › Blog"
Titel: "Blogbeitrag erstellen"
Schließlich soll das Formular als Unterseite vom Blog betrachtet werden und es soll möglich sein, durch Klick auf "Blog" in den Brotkrumen die Blogbeitragserstellung abzubrechen und zurück zum Blog zu gelangen.
NB: Bitte nicht so sehr am Beispiel festhalten, es geht um das Prinzip, die Formulare unter
node/add/*
an der geeigneten Stelle einzubauen. Eine zentrale Stelle wie etwa "Inhalt erstellen" ist denkbar unschön und verwirrend, weil es reichlich Inhaltstypen gibt, die aber jeweils nur in einem bestimmten Kontext sinnvoll sind.Das Formular zum erstellen
am 25.05.2009 - 10:57 Uhr
Das Formular zum erstellen des Inhaltstyp an anderer Stelle auszugeben, sollte nicht das Problem sein mit Hilfe von drupal_get_form und die Breadcrumb http://api.drupal.org/api/function/drupal_set_breadcrumb/6. Jedoch kann es passieren, dass Module die dann die System-URL (node/add/*) erwarten, nicht bei deinem an anderer Stelle eingebundenen Formular zu sehen/interargieren können.
Und ein Frage noch, betrachtest du deine Seite auch als normal Benutzer?
----------------------------------------
http://tobiasbaehr.de/
Gelöste Forenbeiträge mit [gelöst] im Titel ergänzen
Ein Forum ist kein Ersatz für das www (Google.de).
Die Brotkrumenproblematik
am 26.05.2009 - 11:53 Uhr
Die Brotkrumenproblematik wird auch hier diskutiert: Menu Breadcrumb setting active menu to undesirable menus (#303247) Im Wesentlichen hat man sich dort auf einen Patch geeinigt (Kommentar #27), der es ermöglicht, bestimmte Menüs für die Brotkrumenfindung zu ignorieren.
Ich finde es irgendwie besser, nicht Menüs zu ignorieren, sondern ein Menü einem anderen vorzuziehen. Die Problematik also nicht durch Ignorieren, sondern durch Präferenz zu lösen. Damit würde auch kein Verweis in den Menüs ignoriert werden. -- Ich bin nicht der große Drupal-Kenner, meine Halbwegs-Lösung:
Es wird zuerst nach einem Menü mit der Identifikation
menu-*
gesucht. Wird kein solches Menü gefunden, verhält sich das Modul wie zuvor und nimmt irgendein Menü. Wird kein Menü gefunden, bleiben die Brotkrumen leer, ggf. wird nur "Startseite" angezeigt.menu_breadcrumb-6.x-1.1-Menüpräferenz-2009-05-26.patch (aus meinem lokalen Quelltextdepot)
Index: menu_breadcrumb.module
===================================================================
--- menu_breadcrumb.module (revision 203)
+++ menu_breadcrumb.module (working copy)
@@ -76,7 +76,11 @@
function menu_breadcrumb_init() {
if (variable_get('menu_breadcrumb_determine_menu', 1)) {
$menu_item = menu_get_item();
- $menu_link = menu_link_load(db_result(db_query("SELECT mlid FROM {menu_links} WHERE link_path = '%s'", $menu_item['href'])));
+ $query = db_query("SELECT mlid FROM {menu_links} WHERE link_path = '%s' AND menu_name LIKE '%s'", $menu_item['href'], 'menu-%');
+ if (db_affected_rows() == 0) {
+ $query = db_query("SELECT mlid FROM {menu_links} WHERE link_path = '%s'", $menu_item['href']);
+ }
+ $menu_link = menu_link_load(db_result($query));
$use_menu = $menu_link['menu_name'];
menu_set_active_menu_name($use_menu);
}