Startseite
  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche
Startseite › Forum › Drupalcenter.de › Allgemeines zu Drupal ›

[gelöst] CCK-Formular themen z.B. Speicher-Button anders bezeichnen

Eingetragen von dknopf (80)
am 29.12.2011 - 15:31 Uhr in
  • Allgemeines zu Drupal
  • Drupal 7.x

Hallo Ihr Lieben,
ich hoffe, alle haben ein schönes Weihnachtsfest verlebt :-)

Aber auch im alten Jahr habe ich noch eine Frage zu einem Formular, welches mit CCK gemacht ist.

Die "normale" Bezeichnung für den Speicherbutton unten auf dem Formular ist "Speichern" und daneben gibt es noch einen Button "Vorschau".

Ich möchte nun beispielsweise den Button "Speichern" umbenennen in GO und den Vorschau-Button gar nicht anzeigen lassen.
Eine Möglichkeit dafür ist z.B. um das Formular ein extra div mit einer ID drum herumzulegen und dann per CSS die Änderungen in diesem Div vorzunehmen und die Beschriftung des Buttons könnte man über die JQuery ändern. Diese Technik ist mir geläufig.

Aber eigentlich suche ich nach einer ganz anderen Möglichkeit, das Ziel zu erreichen.
Es muß doch auch möglich sein, in der template.php Funktionen aus der FORM-API zu überschreiben.

Mein Ansatz dazu:
Wenn das cck-Formular den Inhaltstyp testcck hat, dann habe ich folgendes in die template.php geschrieben:

<?php

function themename_testcck_node_form($form) {
   
$form['submit']['#value']="GO";
    return(
drupal_render($form));
}

?>

Das funktioniert aber leider nicht.
Was mache ich denn da falsch ?

lieben Gruß
Daniela

‹ [gelöst] Pflichtfelder nachträglich zu Nicht Pflichtfelder ändern [gelöst] Composer Core-Update von 8.4.2 auf 8.5.6 passiert nix ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

Du mußt über

Eingetragen von wla (9461)
am 29.12.2011 - 16:07 Uhr

Du mußt über [api:hook_form_alter] gehen, um die Form zu ändern.

Beste Grüße
Werner

  • Anmelden oder Registrieren um Kommentare zu schreiben

Hallo Werner, da ist mir

Eingetragen von dknopf (80)
am 29.12.2011 - 16:58 Uhr

Hallo Werner,
da ist mir meine Frage ja richtig peinlich so im Nachhinein :-(

Also dein Tipp ist genau richtig und es funktioniert auch ganz einfach.

Hier noch mal der Code-Schnippsel zum Nachlesen:

<?php

function themename_form_alter(&$form, &$form_state, $form_id) {
    if(
$form_id=="testcck_node_form")
        {
       
$form['actions']['submit']['#value']="GO!!"; // hier wird der Speicher-Button umbenannt
//        $form['actions']['preview']['#value']="Vor !!"; falls man den Vorschau-Button umbenennen will
       
$form['actions']['preview']=""; // so ist der Vorschau-Buton nicht zu sehen
       
}
    }

?>

Vielen Dank noch mal :-)

  • Anmelden oder Registrieren um Kommentare zu schreiben

Ist doch nicht so

Eingetragen von wla (9461)
am 29.12.2011 - 18:36 Uhr

Ist doch nicht so problematisch, Hauptsache, Du hast jetzt eine Lösung. Markiere bitte noch den Thread als gelöst ([gelöst] vor der ersten Titel im Thread setzen).

Beste Grüße
Werner

  • Anmelden oder Registrieren um Kommentare zu schreiben

Hallo, ich muss hier leider

Eingetragen von sacre (97)
am 16.06.2013 - 11:18 Uhr

Hallo,

ich muss hier leider nochmal nachhaken.... irgendwie stelle ich mich zu blöde an.

"meintheme" ist der Name meines gerade aktiven Themes in dessen Ordner die template.php liegt.
"angebot-verkauf-node-form" ist die id, die über Firebug als Form-ID zu finden ist. Entsprechend des Ersatzes der "-" durch "_" ergibt sich dann:

<?php
function meintheme_form_alter(&$form, &$form_state, $form_id) {
    if(
$form_id=="angebot_verkauf_node_form")
        {
       
$form['actions']['submit']['#value']="Eintragen";
        }
    }
   
?>

Leider auch nach Cache-Löschung und Strg + F5 keine Reaktion. Was läuft denn hier falsch?

  • Anmelden oder Registrieren um Kommentare zu schreiben

am besten wird es sein, du

Eingetragen von torfnase (1525)
am 16.06.2013 - 11:29 Uhr

am besten wird es sein, du überprüfst zunächst einmal, ob die $form_id wirklich den Werte "angebot_verkauf_node_form" hat.
Ich denke, es ist klar wie das geht:

<?php

function meintheme_form_alter(&$form, &$form_state, $form_id) {
dsm($form_id);
    if(
$form_id=="angebot_verkauf_node_form")
        {
       
dsm("Es ist tatsächlich die richtige Form-ID gewählt worden.");
      
$form['actions']['submit']['#value']="Eintragen";
        }
    }

?>

Gruß
Berthold

  • Anmelden oder Registrieren um Kommentare zu schreiben

Kleine Ergänzung zu Bertholds

Eingetragen von leda.ch (977)
am 16.06.2013 - 20:26 Uhr

Kleine Ergänzung zu Bertholds Rat: falls dsm nicht geht, muss das devel-Modul installiert werden.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Vielen Dank euch Beiden....

Eingetragen von sacre (97)
am 16.06.2013 - 20:48 Uhr

Vielen Dank euch Beiden.... mittlerweile habe ich den Fehler gefunden.
Es kann natürlich nicht funktionieren, wenn man zwar ein Haupt-Theme hat, das Formular sich aber im "Seven"-Verwaltungs-Theme öffnet.

Jetzt läufts, wie gewollt, danke nochmal! :)

  • Anmelden oder Registrieren um Kommentare zu schreiben

Test mit den

Eingetragen von torfnase (1525)
am 10.11.2018 - 18:13 Uhr

Test mit den Benachrichtigungen.....
Ich teste das mal an einem uralten Thread, bei dem ich weiß, dass ich immer eine Benachrichtigung bekommen haben

  • Anmelden oder Registrieren um Kommentare zu schreiben

Benutzeranmeldung

  • Registrieren
  • Neues Passwort anfordern

Aktive Forenthemen

  • 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
  • Nach Installation der neuesten D10-Version kein Zugriff auf Website
  • Composer nach Umzug
  • [gelöst] Taxonomie Begriffe zeigt nicht alle Nodes an
  • Drupal 11 + Experience Builder (Canvas) + Layout Builder
  • Welche KI verwendet ihr?
  • Update Manger läst sich nicht Installieren
Weiter

Neue Kommentare

  • melde mich mal wieder, da ich
    vor 1 Tag 52 Minuten
  • Hey danke
    vor 1 Tag 19 Stunden
  • Update: jetzt gibt's ein
    vor 2 Tagen 13 Stunden
  • Hallo, im Prinzip habe ich
    vor 6 Tagen 23 Stunden
  • Da scheint die Terminologie
    vor 1 Woche 2 Stunden
  • Kannst doch auch alles direkt
    vor 1 Woche 4 Tagen
  • In der entsprechenden View
    vor 1 Woche 4 Tagen
  • Dazu müsstest Du vermutlich
    vor 1 Woche 4 Tagen
  • gelöst
    vor 4 Wochen 21 Stunden
  • Ja natürlich. Dass ist etwas,
    vor 4 Wochen 1 Tag

Statistik

Beiträge im Forum: 250233
Registrierte User: 20449

Neue User:

  • Mroppoofpaync
  • 4aficiona2
  • AppBuilder

» Alle User anzeigen

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