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 - 16: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 (9466)
am 29.12.2011 - 17: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 - 17: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 (9466)
am 29.12.2011 - 19: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 - 12: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 - 12: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 - 21: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 - 21: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 - 19: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

  • Canvas Palette: Eine fertige Komponentenbibliothek für Drupal Canvas
  • Hilfe zu Updates oder Composer
  • Vergleich Drupal und Contao
  • [geloest] Blocks in Bootstrap nebeneinander darstellen und nicht untereinander
  • DrupalCamp Frankfurt 27-28 November 2026
  • Bitte mein Bentzerkonto löschen
  • Beim Aufruf einiger Inhalte erhalte ich folgende Fehlermeldung
  • Neuinstallation: vermutlich ein rewrite-Problem
  • Drupal CMS installieren
  • [erledigt]MP3 in Drupal 10 einbinden
  • (gelöst)Drupal 11 installieren
  • Titel ausblenden
Weiter

Neue Kommentare

  • Danke ich werde mir die
    vor 3 Tagen 4 Stunden
  • Vielen Dank für Ihren
    vor 5 Tagen 22 Stunden
  • Composer ist sehr ratsam
    vor 1 Woche 21 Stunden
  • Vielen Dank für den
    vor 1 Woche 3 Tagen
  • Die alten CMS Vergleiche von contentmanager.de
    vor 1 Woche 3 Tagen
  • Gut gemacht
    vor 1 Woche 3 Tagen
  • Layout Builder etc. z.B. für Landing Pages
    vor 1 Woche 3 Tagen
  • Links
    vor 1 Woche 6 Tagen
  • Moin,wow, sehr gutes
    vor 2 Wochen 11 Stunden
  • Dass ist eine spannende
    vor 2 Wochen 18 Stunden

Statistik

Beiträge im Forum: 250316
Registrierte User: 20562

Neue User:

  • rofilm
  • Cruzorerm
  • Plandkeews

» Alle User anzeigen

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