Contact form plusz fieldekkel, több nyelven

Sk8erPeter képe

Sziasztok!

Testreszabott contact formot szeretnék elhelyezni az oldalamon. A beépített Contact modul előnye, hogy eleve többnyelvű (megvannak a megfelelő fordítások a mezőkhöz), hátránya, hogy plusz fieldek nem adhatók hozzá "out of the box" a core-ban (ami mondjuk számomra furcsa, hogy miért nem került be mondjuk a többi content type-hoz, ahol szabadon adhatók hozzá fieldek, vagy más módon miért nem testreszabható).
A lehetséges kerülő megoldások (ugyanezt mások is leírták már előttem Drupal Stack Exchange-en: [link]):

  • saját modul, a megfelelő hook_form_FORM_ID_alter() (konkrétan: hook_form_contact_site_form_alter), hook_mail_alter() (azonbelül $message['id']=='contact_site_form' vizsgálata) hookok implementálásával: melós (meg kell írni a validáló függvényeket is, a végső formátumot is beleírni kódba, nem módosítható szépen admin-felületen (csak ha megírjuk az ehhez tartozó részt is külön), stb.), főleg ha vannak alternatívák
  • más modulok felhasználása:
    • 7-eshez a Contact form fields modul is még erősen dev állapotban van
    • Webform modul: talán még ez a legegyszerűbb megoldás, ami egyben ésszerű is: nagyon könnyű grafikus felületen hozzáadogatni újabb fieldeket, átszabni a meglévőket, a Webform Validation segítségével a validálást is változtatgatni szép admin-felületen, stb.
      Egy hátránya ennek is van: a többnyelvűség érdekében - legalábbis eddig jobbat nem találtam - minden nyelvhez külön-külön el kell készíteni ugyanazokat a webformokat, ahogy pl. egy cikkhez is lehet többnyelvűséget létrehozni.
      Készítettem egy példaként szolgáló contact formot, ez az első, angol nyelven létrehozott webform, miután a "Content types"-nál, a Webformon belül (/admin/structure/types/manage/webform) beállítottam a "Publishing options"-nél, hogy "Enabled, with translation", a "Multilingual settings"-nél pedig azt, hogy "Require language (Do not allow Language Neutral)." (plusz az angol nyelvre azt, hogy "Set current language as default for new content.", de ez mellékes a lényeg szempontjából):
      Maga a Webform egy példa jellegű contact formra, látható a többnyelvűség:
      http://i.imgur.com/JSNgA.png
      Itt a szerkesztés fül:
      http://i.imgur.com/CchDe.png
      a fieldek a Webform fülön:
      http://i.imgur.com/o3xWB.png
      Translate fül:
      http://i.imgur.com/zZD2Y.png

      Ez pedig ugyanennek a magyarra fordított változata, látható, hogy nincsenek fieldek, így azokat a Webform fülön újra létre kell hozni (a validálást szintén):
      http://i.imgur.com/O0Yp0.png
      Webform fül (egyelőre üres, mert ehhez a nyelvhez nem hoztam létre a fieldeket újból):
      http://i.imgur.com/0ayBD.png

Kíváncsi vagyok, Ti melyik megoldást választanátok erre?
A Webform úgy tűnik, a lehető legegyszerűbben összekattintgatható megoldás az említett problémára, de a hátránya, hogy minden nyelven el kell készíteni. Persze ez mondjuk azon a plusz általában max. 2-3 nyelven nem a legnagyobb gond (időben is esélyes, hogy kevesebbet emészt fel, mint a saját modul írása), de mégis felvetem a kérdést, mi a véleményetek erről.
Mindegyik módszernek van előnye és hátránya is, Ti hogyan közelítitek meg a kérdést?

Köszi!

Melyik modulhoz, modulokhoz kapcsolódik a téma?: 
Drupal verzió: 
csakiistvan képe

+1 a webformnak

1
0

Drupal full-stack developer at Wunderman Thompson Budapest

szt képe

...annál is inkább, mert már formálódik a Webform Localization modul, persze még csak sandbox, de jó lesz, én már használtam is :)

1
0
Sk8erPeter képe

csakiistvan, szt : köszönöm a válaszokat, akkor úgy tűnik, valóban marad a Webform.

szt : ha már próbáltad a Webform Localizationt: milyennek találod? Kiválthatná a fenti node-fordítgatást, ahol minden webformot nyelvenként hozok létre?

0
0
szt képe

Kétféle fordítást támogat, ez a settings oldal.
http://i44.tinypic.com/2vlvgyf.jpg
Kicsit kényelmetlen még a beállítása, de lehet használni már.

1
0
Sk8erPeter képe

Köszi a screenshotot! Így már látszik, miről is lesz szó, remélhetőleg sokat fog még fejlődni.
Egyelőre mégis maradok a manuális létrehozogatásnál nyelvenként, tulajdonképpen megvoltam az egésszel kb. max. 20 perc alatt, amiben benne volt az agyalás, hogy mi is legyen a megfelelő fordítás adott kifejezésekre.
Hogy lezárjam a kommentemet: a Webform erényei vitathatatlanok!! :D

0
0