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

[gelöst] hook_node_form_alter: Problem default_value für body zu setzen

Eingetragen von Zeg (48)
am 06.08.2015 - 10:06 Uhr in
  • Modul-Entwicklung
  • Drupal 7.x

Hallo,

ich möchte in hook_node_form_alter für das Body-Feld einen Default-Wert setzen.

Das ganze funktioniert über

$form['body']['de'][0]['value']['#default_value'] = 'test';

allerdings nur dann, wenn ich in den Feldeinstellungen die Option Textverarbeitung auf
"Klartext" setze.

In der Option "Gefilterter Text" wird mein Default-Wert nicht mehr verwendet.

Wo muss ich einhaken, um den Default-Wert auch für den Filter zu setzen?

Beste Grüße,
Zeg

‹ Drupal App Entwicklung [gelöst] hook_node_form_alter: Problem default_value für body zu setzen ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

Hallo, wenn die Option auf

Eingetragen von Hyp1 (1463)
am 06.08.2015 - 10:25 Uhr

Hallo,

wenn die Option auf gefilterter Text ist musst Du
warscheinlich Deinen Text in p Tags setzen, damit er angezeigt wird.
$form['body']['de'][0]['value']['#default_value'] = '<p>test</p>';

LG

Robert

  • Anmelden oder Registrieren um Kommentare zu schreiben

leider nicht

Eingetragen von Zeg (48)
am 06.08.2015 - 10:38 Uhr

Hallo Robert,

nein, leider nicht.

Wenn ich im Edit-Form das Textformat ändere, bleibt immer der Original-Body des Nodes. (Auch bei Klartext).

Nur wenn ich die Feldeinstellung ändere, wird mein default_value übernommen.

Ich gehe davon aus, dass der Filter irgendwo den Orginal-Wert lädt und selbst als default setzt.

Ich finde nicht heraus, wo das geschieht.

Danke fürs Mitdenken!
Zeg

  • Anmelden oder Registrieren um Kommentare zu schreiben

vielleicht ist im

Eingetragen von ronald (3857)
am 06.08.2015 - 10:43 Uhr

content_type etwas hinterlegt?

Schau mal da.

Ich würde es auch eher dort unterbringen, als über einen form_alter ;-)

  • Anmelden oder Registrieren um Kommentare zu schreiben

$form['body']['de'][0]['#defa

Eingetragen von glycid (921)
am 06.08.2015 - 10:45 Uhr

$form['body']['de'][0]['#default_value'] = 'test'; sollte unabhängig vom Filter funktionieren.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Hallo Ronald, ich habe zum

Eingetragen von Zeg (48)
am 06.08.2015 - 10:51 Uhr

Hallo Ronald,

ich habe zum testen ein ganz frischen ContenType übers Backend angelegt.

Das Problem ist, dass ich diesen "Default-Wert" nur in einem ganz bestimmten Fall ändern möchte, und dieser Wert dynamisch erzeugt werden soll.

Insofern sehe ich nur die Möglichkeit über form_alter, oder?

  • Anmelden oder Registrieren um Kommentare zu schreiben

glycid

Eingetragen von Zeg (48)
am 06.08.2015 - 10:55 Uhr
glycid schrieb

$form['body']['de'][0]['#default_value'] = 'test'; sollte unabhängig vom Filter funktionieren.

Leider nicht! Ich bin so vorgegangen:

  1. Neuen Content Type angelegt (test_ct)
  2. Code-Zeile in form_alter für test_ct_node_form ergänzt
  3. Test mit Feldeinstellung Klartext: OK
  4. Test mit Feldeinstellung gefilter: Feher
  • Anmelden oder Registrieren um Kommentare zu schreiben

Hi, wenn ein Filter

Eingetragen von Hyp1 (1463)
am 06.08.2015 - 11:32 Uhr

Hi,

wenn ein Filter eingeschalten ist, probiers mal

$form['body']['de'][0]['value'] ='test';
$form['body']['de'][0]['safe_value'] ='<p>test</p>';

bei gefiltertem Text wird safe_value ausgegeben.

MfG

Robert

  • Anmelden oder Registrieren um Kommentare zu schreiben

wenn du Bedingungen prüfen musst

Eingetragen von ronald (3857)
am 06.08.2015 - 12:16 Uhr

kommst du natürlich nicht an form_alter vorbei.
Schau mal darauf, dass im content_type KEIN Defaultwert steht.
Und überprüfe mal (durch debug-Ausgaben), ob die Bedingungen erfüllt sind, und form_alter erwartungsgemäß arbeitet.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Zeg schrieb Test mit

Eingetragen von glycid (921)
am 06.08.2015 - 12:34 Uhr
Zeg schrieb
  1. Test mit Feldeinstellung Klartext: OK
  2. Test mit Feldeinstellung gefilter: Feher

Hm, ich habs mit dem Body Field des Standard- Content Types "Article" so wie beschrieben getestet und es funktioniert einwandfrei mit beiden Einstellungen plain Text und Filter. Ist auch egal, ob ich in den Feldeinstellungen selber schon einen Default Wert setze, der wird dann korrekt überschrieben.

Ist der Wert für $form['body']['#language'] auch wirklich 'de' ? Teste auch mal:

$form['body']['und'][0]['#default_value'] = 'Mein Wert';

  • Anmelden oder Registrieren um Kommentare zu schreiben

Danke

Eingetragen von Zeg (48)
am 06.08.2015 - 19:53 Uhr

Warum auch immer, jetzt funktioniert es?

Möglicherweise habe ich mich selbst ausgetrickst, indem ich nach Änderungen am Code ein "Reload" gemacht habe, statt die Seite völlig neu zu laden ...

Danke an alle!

  • Anmelden oder Registrieren um Kommentare zu schreiben

Benutzeranmeldung

  • Registrieren
  • Neues Passwort anfordern

Aktive Forenthemen

  • Netx360
  • Dynamische Ansicht von Seiteninhalt (als Tabelle?)
  • Vergabe von Berechtigungen für bestimmte Rollen; mir fehlt der Haken bzw. das „Veröffentlicht“
  • Ich brauche dringen Hilfe zu Updates oder ggf. wwie geht Composer?
  • 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.
  • [gelöst] Anzeigeformat Text mit Bild in einem Artikel, Drupal 11
  • Social Media Buttons um Insteragram erweitern
Weiter

Neue Kommentare

  • Arrrrg. Nix Tabelle :-D /*
    vor 2 Wochen 2 Tagen
  • Textboxen mit Tabelle
    vor 2 Wochen 2 Tagen
  • Du sollst ja auch keine
    vor 2 Wochen 2 Tagen
  • Theme
    vor 2 Wochen 2 Tagen
  • Welches Theme benutzt du
    vor 2 Wochen 2 Tagen
  • Mit Responsive Raster hatte
    vor 2 Wochen 3 Tagen
  • Hallo Alex,um das Häkchen
    vor 2 Wochen 3 Tagen
  • Modul view_unpublished
    vor 2 Wochen 4 Tagen
  • Modul "override node options"
    vor 2 Wochen 5 Tagen
  • Im Grunde ist dass ein
    vor 3 Wochen 15 Stunden

Statistik

Beiträge im Forum: 250271
Registrierte User: 20479

Neue User:

  • Floydphymn
  • Stevebok
  • Robertnobia

» Alle User anzeigen

User nach Punkten sortiert:
wla9463
stBorchert6003
quiptime4972
Tobias Bähr4019
bv3924
ronald3857
md3717
Thoor3678
Alexander Langer3416
Exterior2903
» User nach Punkten
Zur Zeit sind 0 User und 62 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