sziasztok!
a user_login_block -ot próbálom átalakítani, kevés sikerrel.
Boobaa fordítása és a api.drupal.org hook_theme -re vonatkozó leírása alapján kezdtem neki.
a submit gombot át is alakítja rendesen úgy ahogy szeretném, viszont
eltűnik az egész eredeti form.
template.php -ben a kód:
function mytheme_theme() { return array( 'user_login_block' => array( 'variables' => array('form' => NULL), ), ); } function mytheme_user_login_block($variables) { $form = $variables['form']; $form['actions']['submit']['#type'] = 'image_button'; $form['actions']['submit']['#src'] = drupal_get_path('theme', 'mytheme') . '/images/icon.png'; $output = 'text1'; $output .= drupal_render($form['name']); $output .= 'text2'; $output .= drupal_render_children($form); $output .= 'text3'; return $output; }
Boobaa írja, h a hook_theme -ben a d6-al ellenben 'render element' -et kell használni, nálam az mindig hibával elszállt...
's még azt is írja h minden elemet végig kell hajtani a drupal_render() fv-en, nekem a drupal_render($form['name']) sem csinál semmit.
örülnék ha érteném mit miért, előre is köszi a segítséget!
üdv.sco
Melyik modulhoz, modulokhoz kapcsolódik a téma?:
Drupal verzió:
Fórum:
Mi a hibaüzenet?
Többet segítene ha megadnád a hibaüzenetet is!
Drupal developer at Cheppers
a hibaüzenet
Notice: Undefined index: form mytheme_user_login_block()
amit a
sorra ír, plusz két
Warning: Illegal offset type theme()
Megoldás!
Igazából a hibaüzenet arra vonatkozik, hogy mikor próbáljuk a $variables tömböl kiszedni a form indexen lévő értéket az nem létezik!
Ha kiíratjuk akkor tényleg NULL értéket ad vissza.
Igazából a megoldás az hogy a
'variables' => array('form') helyett 'render element' => 'form' kell használni.
Ez vissza fogja adni a form szerkezetét!
Drupal developer at Cheppers
alakul köszi!
most viszont eltűnt az image_button -om.
persze ha nyomok egy hook_form_alter -t a hook_theme
előtt akkor minden jó, de ezt egy fv-ben akartam.
mit szólsz?
Igazából,..
végiggondolva nem a legszebb megoldás a témázó függvényben belenyúlni a form szerkezetébe, erre a célra a megfelelő a hook_form_alter. A témázó függvényben ott maximum azt szabályozzunk, hogy ebből mit jelenítsen meg a .tpl-ben.
Drupal developer at Cheppers
értem
nos a cél az volt, h a linkek (új felhasználó, új jelszó) a submit gomb alatt legyenek. a segítségeddel sikerült is.
maximális köszönet érte!