customizing cck field widgets
Eingetragen von joerg-1958 (106)
am 27.10.2009 - 12:37 Uhr in
am 27.10.2009 - 12:37 Uhr in
Hallo zusammen,
gibt es eine einfache Möglichkeit (außer css hidden) die Ausgabe der cck widgets in der node/add From zu customizen.
Z.B. möchte ich die Ausgabe beim Imagefield
Maximale Dateigröße: 64 MB
Zulässige Erweiterungen: png gif jpg jpeg
Bilder die größer als 800x600 Pixel sind werden verkleinert.
nicht haben. Weiter möchte ich ein anders Icon für cck Image Fupload ...
Idealerweise gäbe es etwas ähnlich hook_form_alter ...
Danke Jörg
- Anmelden oder Registrieren um Kommentare zu schreiben
Das sollte schon mit
am 27.10.2009 - 13:00 Uhr
Das sollte schon mit hook_form_alter gehen. Es sieht aber so aus, als ob verschiedene Module ihren Beitrag zu dieser Form leisten. Wenn Du jetzt diese Form auch noch ändern willst, nach den anderen Modulen, mußt Du über das Gewicht Deines Moduls dafür sorgen, daß Deine Änderungen erst am Ende eingebracht werden.
Beste Grüße
Werner
Gewicht des Moduls
am 27.10.2009 - 14:03 Uhr
Hallo Werner,
ich habe jetzt in der Tabelle System das Gewicht meines Moduls auf 1 (vorher hatte ich mit -1 probiert)gesetzt. Alle cck Module haben das Gewicht 0. Dennoch besteht in hook_form_alter $form ausschließlich aus Elementen des node-typs und nicht der Felder. Ich habe vorsichtshalber auch noch Strukturieren->Module aufgerufen und den Cache geleert. Hast Du noch eine Idee dazu?
Vielen Dank Jörg
Form-ID?
am 27.10.2009 - 14:24 Uhr
Greifst Du Dir auch die richtige Form-ID?
if ($form_id == '<nodetyp>_node_form' ) {
....... hier der Code
}
<nodetyp> mit Deinem Node-Typ ersetzen.
Beste Grüße
Werner
$form_id ist korrekt
am 27.10.2009 - 14:43 Uhr
Hallo Werner,
ja ich benutze XDebug mit Eclipse und habe einen Haltepunkt am switch-stmt in form_alter bei Aufruf meiner Form.
Daran liegts leider nicht.
Güße Jörg
form_alter zieht nicht bei cck OptionWidgets (javascript)
am 27.10.2009 - 15:42 Uhr
Hallo Werner,
Deine Hinweise waren richtig, allerdings mein Problem ist, daß ich die Inputform für cck OptionWidget Felder anpassen möchte, die laufen aber über javascript und sind deshalb auch nicht in der Inputform zu finden.
Jetzt ist also die Frage wie OptionWidgets zu customizen sind ohne cck Module zu hacken.
Besten Dank und Grüße
Jörg
customizing cck Option Widgets - gelöst
am 28.10.2009 - 16:29 Uhr
Hallo zusammen,
nach viel Schweiß hier die Lösung:
in der template.php des Themes zB my_theme:
function my_theme_theme()
return array(
'my_node_form' => array(
'arguments' => array('form' => NULL),
'template' => 'my-node-form',
),
);
}
function my_theme_preprocess_my_node_form(&$vars) {
$vars['whole_form'] = $vars['form'];
}
und dann in my-node-form.tpl.php
// Ausgabe der Form
print_r($whole_form);
// und dann einzelne Werte einfach überschreiben
print drupal_render($whole_form);
}
Viele Grüße
Jörg