Startseite
  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche
Startseite › Forum › Drupalcenter.de › Module › Modul-Entwicklung ›

hook_form_alter und das bearbeiten von select-fields

Eingetragen von mrfloppy123 (17)
am 18.04.2012 - 20:01 Uhr in
  • Modul-Entwicklung

Hallo

Ich habe einen Contenttype 'X' der ein Field in Form eines Select-fields Referenzen auf einen zweiten Cnntenttype 'Y' enthält.
Um das node/add Fromular des Contenttypes 'X' zu bearbeiten habe ich ein Modul erstellt und diverse Änderungen via 'hook_form_alter' vorgenommen.
Nun wollte ich bei dem oben genannten Select-field den Text des Standardwertes 'Select a Value' ändern (den Text, Nicht den default-value).

Versuche wie

$form['besagtes_field']['und']['#multiple']['#options']['_none']' ='was auch immer'

scheiterten kläglich. Irgendwie blicke ich da grad nicht mehr durch. Ebenfalls wollte ich an das besagte Field noch eine Option hinzufügen, zudem es keinen entsprechenden Inhalt vom Contenttyp 'Y' gibt (klingt unlogisch, ist hier aber nötig). Wie kann ich diese beiden Manipulationen effektiv durchziehen?

Gibt es eventuell einen hook um das field generell zu bearbeiten, also nicht über 'hook_form_alter'?

‹ [gelöst] hook_menu wird nicht aufgerufen Plupload ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

Hook_form_alter ist schon

Eingetragen von wla (9464)
am 18.04.2012 - 21:57 Uhr

Hook_form_alter ist schon richtig. Laß Dir mal den Form-Array ausgeben, darin solltest Du den Text finden. Außerden sind alle Select-Values ebenfalls dort abgelegt und Du müßtest den entsprechenden Teil-Array um Deinen Wert erweitern.
Was ich jetzt nicht weiß, ist, ob die Werte direkt zu finden sind oder noch nicht erscheinen. Dann mußt Du mittels $form['#after_build'][] = 'meine_afterbuild-funktion'; eine eigene Funktion definieren, die direkt vor der Anzeige des Formulars noch ausgeführt wird. Darin sollten dann alle Form-Elemente greifbar sein.

Beste Grüße
Werner

  • Anmelden oder Registrieren um Kommentare zu schreiben

hi floppy Zitat: Gibt es

Eingetragen von 1kubik (903)
am 18.04.2012 - 21:58 Uhr

hi floppy

Zitat:

Gibt es eventuell einen hook um das field generell zu bearbeiten, also nicht über 'hook_form_alter'?

dafür ist ja hook_form_alter da

Zitat:

Versuche wie

$form['besagtes_field']['und']['#multiple']['#options']['_none']' ='was auch immer'

scheiterten kläglich.

so müsste es funktionieren:
['#default_value'] = 'was auch immer'
http://drupal.stackexchange.com/questions/8171/set-select-list-default-v...

  • Anmelden oder Registrieren um Kommentare zu schreiben

Mhh..läuft nich ganz:mit

Eingetragen von mrfloppy123 (17)
am 23.04.2012 - 16:35 Uhr

Mhh..läuft nich ganz:
mit

['#default_value'] = 'was auch immer'

kann ich nur den key der Option übergeben, welche standardmäßig in dem Select-field ausgewählt sein soll.

Die after_build funktion war der richtige Weg, also folgende Vorgehensweise:
in der "hook_form_alter"-Funktion:

$form['besagtes_field']['und']['#after_build'][] = 'alter_besagtes_field';

und nun die Funktion

function alter_besagtes_field($form, &$form_state){
$form['#options']['_none'] = 'Bitte waehlen';//Ersetze den Text "- Select a value -"
$form['#options']['0']='neue Option';//Füge eine neue Option mit dem Key 0 hinzu
return $form;
}

Was mich jetzt gerade beschäftigt ist, dass ich mit dieser Methode,die den Text "- Select a value -" ersetzen soll keine Umlaute benutzen kann...
Schreibe ich ein 'ä' wird der komplette Text auf der Seite ausgeblendet. Schreibe ich anstatt dessen das korrekte ä , wird eben dies auf der Website ausgegeben und nich das 'ä'. Ideen?

  • Anmelden oder Registrieren um Kommentare zu schreiben

Welchen Editor benutzt

Eingetragen von JThan (396)
am 23.04.2012 - 17:03 Uhr

Welchen Editor benutzt du?

Hast du als Zeichensatz "utf8" eingestellt?

  • Anmelden oder Registrieren um Kommentare zu schreiben

Benutze Notepad++ Arbeite in

Eingetragen von mrfloppy123 (17)
am 24.04.2012 - 15:17 Uhr

Benutze Notepad++

Arbeite in UTF8, hatte sich aber gezeigt, dass Notepad++ in den *.module-Dateien auf ANSI umspringt...
Habs geändert, Problem behoben.

Danke

  • Anmelden oder Registrieren um Kommentare zu schreiben

Benutzeranmeldung

  • Registrieren
  • Neues Passwort anfordern

Aktive Forenthemen

  • Drupal CMS installieren
  • (gelöst)Drupal 11 installieren
  • Titel ausblenden
  • Ich brauche dringen Hilfe zu Updates oder ggf. wwie geht Composer?
  • Dynamische Ansicht von Seiteninhalt (als Tabelle?)
  • Vergabe von Berechtigungen für bestimmte Rollen; mir fehlt der Haken bzw. das „Veröffentlicht“
  • Medien und andere Daten mit Feeds von Drupal 7 auf Drupal 10 migrieren
  • Rolle erstellen nicht zu finden
  • für drupal11 ein Slider Modul
  • [gelöst] W3CSS Paragraphs Views
  • Drupal 11 neu aufsetzen und Bereiche aus 10 importieren
  • Wie erlaubt man neuen Benutzern auf die Resetseite zugreifen zu dürfen.
Weiter

Neue Kommentare

  • Ich habe ja keine Angst vor
    vor 1 Tag 6 Stunden
  • Ist grundsätzlichmachbar – aber nichts für „einfach mal schnell“
    vor 3 Tagen 13 Stunden
  • Vielen Dank erst einmal, aber
    vor 5 Tagen 6 Stunden
  • Du hast die "Trusted host
    vor 5 Tagen 14 Stunden
  • Bitte genauer den aktuellen Lösungs-Ansatz beschreiben
    vor 2 Wochen 4 Tagen
  • Git und rsync sind die wichtigsten Werkzeuge
    vor 3 Wochen 1 Tag
  • Arrrrg. Nix Tabelle :-D /*
    vor 7 Wochen 3 Tagen
  • Textboxen mit Tabelle
    vor 7 Wochen 3 Tagen
  • Du sollst ja auch keine
    vor 7 Wochen 3 Tagen
  • Theme
    vor 7 Wochen 3 Tagen

Statistik

Beiträge im Forum: 250281
Registrierte User: 20494

Neue User:

  • Robertolix
  • DavidBit
  • JeraldZeF

» Alle User anzeigen

User nach Punkten sortiert:
wla9464
stBorchert6003
quiptime4972
Tobias Bähr4019
bv3924
ronald3857
md3717
Thoor3678
Alexander Langer3416
Exterior2903
» User nach Punkten
Zur Zeit sind 0 User und 19 Gäste online.

Hauptmenü

  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche

Quicklinks I

  • Infos
  • Drupal Showcase
  • Installation
  • Update
  • Forum
  • Team
  • Verhaltensregeln

Quicklinks II

  • Drupal Jobs
  • FAQ
  • Drupal-Kochbuch
  • Best Practice - Drupal Sites - Guidelines
  • Drupal How To's

Quicklinks III

  • Tipps & Tricks
  • Drupal Theme System
  • Theme Handbuch
  • Leitfaden zur Entwicklung von Modulen

RSS & Twitter

  • Drupal Planet deutsch
  • RSS Feed News
  • RSS Feed Planet
  • Twitter Drupalcenter
Drupalcenter Team | Impressum & Datenschutz | Kontakt
Angetrieben von Drupal | Drupal is a registered trademark of Dries Buytaert.
Drupal Initiative - Drupal Association