Welchen Hook / Filter muss ich verwenden, um den Seitentitel "Knoten hinzufügen" (Dieser Titel) zu ändern? Wenn Sie beispielsweise "/ node / add /" anzeigen, möchte ich den Titel von "Erstellen" in "Neu hinzufügen" ändern.
Es gibt verschiedene Möglichkeiten, wie Sie dies tun können, aber die Art und Weise, nach der Sie gefragt haben, würde hook_form_alter () verwenden :
<?php
function custom_form_alter(&$form, &$form_state, $form_id) {
if ($form_id == 'mynodetype_node_form') {
drupal_set_title('My new title');
}
}
?>
Dies wäre in einem benutzerdefinierten Modul mit dem Namen custom.module ... drupal_set_title (), wenn es irgendwo auf der Seite geladen wird, wird der Titel entsprechend festgelegt. Sie sind im Grunde genommen in den Renderprozess für Knotenformulare eingebunden und sagen an dieser Stelle "Setzen Sie den Titel auf das, was ich will".
Wenn Sie den Titel weiter unterscheiden möchten, je nachdem, ob der Benutzer einen neuen Knoten erstellt oder einen vorhandenen Knoten bearbeitet , drucken Sie das Array $ form_state mit der Funktion dpm () des Devel- Moduls aus und prüfen Sie, ob es einen gibt Knoten-ID bereits oder nicht - falls vorhanden, bearbeiten Sie einen Knoten. Wenn nicht, erstellen Sie einen neuen Knoten. Stellen Sie den Titel entsprechend ein.
Während hook_form_alter () wahrscheinlich die robusteste Seite ist (falls jemand das Node-Add-Formular von einem anderen Ort als node / add / [type] aus betrachtet), können Sie auch den Pfad in hook_init () überprüfen und dort den Titel festlegen. oder von einer Vielzahl anderer Orte (in Drupal 7 vielleicht hook_page_alter ()).
Ich hatte das gleiche Problem und musste dafür ein Modul schreiben.
Sie finden meinen Beitrag zu meinem Modul Node Add Title für Drupal 7
Hoffe es kann helfen.
quelle