Si Puedo, una utopia

Saltar al contenido
Si Puedo

Drupal »

Traducir opciones de un CCK o de un Webform

Publicado el Miércoles 1 Abril 2009

En la última web que he preparado me ha surgido un “problemita” con el tema de las traducciones en el apartado de las reservas, al principio habia generado un nodo distinto para cada idioma y todo funcionaba correctamente, pero luego me he dado cuenta que cuando quieran añadir algun campo nuevo poner la web en más idiomas me iba a tocar cambiarlos en todos uno por uno.

Como “uno” es un flojo, decidi crear un solo nodo (webform) y traducir los textos, hasta ahí sin problema, el problema ha ocurrido cuando he intentado traducir las opciones de un campo. El campo “room type” tiene dos opciones, double room y single room… pero no he encontrado ninguna forma que me funcionara para traducirlo :P

Así que he echado mano del hook “form_alter” y GENIAL, es posible que se pueda hacer de otra forma… pero no la he encontrado, os pongo como lo he hecho por si os sirve :P

function formularios_form_alter(&$form, $form_state, $form_id) {
//print_r($form); # para saber cual es el formulario

$formulario='webform_client_form_ID'; # el formulario que quiero cambiar
if ($form_id==$formulario){
$form['submitted']['room_type']['#options'] = array(
'double' => t('Double room'),
'single' => t('Single room')
);
}
}

Asi de simple, luego solo tengo que cambiar para cada idioma las cadenas dentro de t() y listo opciones cambiadas para idioma.

Me ha ayudado bastante este post

3 Comentarios »

  1. Artículos destacados, Marzo de 2009 | cambrico.net Dice:

    Abril 13, 2009 en 7:31 pm

    [...] Traducción de opciones en un CCK o Webform, en Si Puedo. [...]

  2. oskar calvo Dice:

    Abril 14, 2009 en 4:53 pm

    Sencillo y genial, me parece una gran solución

    Oskar

  3. Diego Zamora Dice:

    Abril 17, 2009 en 3:54 pm

    Hay días que me das miedo Javier….

Dejar un comentario

El contenido este blog está bajo licencia Creative Commons (Reconocimiento - Compartir igual) - desarrollo javiermaties.com