Kereső űrlap formázása

pp képe

Sziasztok!

Azt szeretném elérni, hogy a kereső formban a szövegmező elől tűnjön el a szöveg (search this site).

Erre persze én csípőből tolnék egy minimodult formalterrel, de érdekelne, hogy meg lehet-e oldani pusztán sminkből a dolog.

Amit most csinálok, hogy a theme_element-re ráülök és ha egy olyan elem jön, aminek a neve megegyezik a keresőformban található szövegmező nevével akkor törlöm a title-t és kitolom. Ezzel ugye csak az a probléma, hogy így minden formban eltűnik a hasonló nevű szövegmezők elől ez a title.

Ötleteket várok, ki hogy csinálná modul nélkül természetesen. (valószínűleg megint nem látom a fától az erdőt...)

pp

Drupal verzió: 
Fórum: 
gergely képe

szia!

ajanlom atnezesre mondjuk a Green n Black sminkben a page.tpl.php, search-theme-form.tpl.php es a template.php-t :)

0
0

---
Tévedni mindenkinek szabad, csak a mérnöknek észre kell vennie.

aboros képe

akkor van preprocessora is :)
template_preprocess_search_theme_form(&$variables) (tu avojd templét buccsering!)

0
0

-
clear: both;

crt képe

Erről jut eszembe... Miután pp feltette a kérdést, volt egy üres fél órám és nekiálltam kipróbálni, hogy is lehetne megoldani a problémát. Valamiért arra gondoltam, hogy a blokkokban szeretné a szöveget eltüntetni, ezért a template_preprocess_search_block_form() függvénnyel kezdtem hozzá emígyen:
a search modulból a függvény átmásol, template -> garland átnevez, a függvény végére a drupal_set_message('<pre>'.print_r($variables, 1).'</pre>'); sor odabiggyeszt, search blokk engedélyez, cache töröl. Semmi kimenet.

Tudom azóta meglett a megoldás, de mégsem hagy nyugodni, hogy miért nem volt itt kimenetem. Valamit biztos kihagytam vagy elnéztem, mert hiányérzetem van, de nem jövök rá, hogy mit.

Üdv: Zoli

0
0
nevergone képe

Úgy tudom, a preprocess függvények, csak akkor hajtódnak végre, ha a sminkben létezik a hozzájuk tartozó tpl.php fájl is.

0
0
crt képe

Ez hiányzott. Bár a kódban még nem találtam meg, hogy miért csak akkor fut le. De mondjuk logikus.

Köszi.

Üdv: Zoli

0
0
pp képe

Közben nekiálltam és a hagyományos módon átsminkeltem a form-ot és csókolom. A Green n Black is ugyan ezt csinálja. ;)
Semmi prerpcess, semmi x.tpl.php. (a GnB-nél teljesen ugyan az van a search-theme-form.tpl.php fájlban mint az eredeti search fájlban, tehát felesleges ;))

Szóval a megoldás marad annyi, hogy az alábbi kódot betoljuk a sminkünk template.php fájljába.

function phptemplate_search_theme_form($form) {
  unset($form['search_theme_form']['#title']);
  return drupal_render($form);
}

Aboros még valami konstruktívat tudsz hozzátenni?

pp

0
0
aboros képe

kb ugyan ez lenne preprocessorral is, csak nem lenne return render_form, hanem a $vars -ban van a formod és ott unset title, aztán csók. (bár lehet, hogy nem ennyire egyszerű, sose használtam még ezt a perprocessort)

0
0

-
clear: both;