30
Mayo
2010
swevel

Como cambiar el texto <Any> en un formulario expuesto con views de Drupal.

Para poder hacer este cambio debemos usar un form_FORM_ID_alter en un módulo y aplicarlo de la siguiente forma:

/**
 * Implementación del hook_form_FORM_ID_alter()
 */

function mymodule_form_views_exposed_form_alter($form, $form_state){
  if(isset($form['tid'])): $form['tid']['#options'] = terpel_expose_replace($form['tid']['#options'], "<Any>", t("Todos")); endif;
}

/**
 * Replace text as <any> in select expose forms
 *
 * @param $options The options of select
 * @param $word Word to search
 * @param $replace Replace word
 * @return array
 */
function mymodule_expose_replace($options, $word, $replace){
  $options_processed = array();
 
  foreach($options as $key=>$value){
    if($word == $value){
      $options_processed[$key]=$replace;
    }
    else{
      $options_processed[$key]=$value;
    }
  }
  return $options_processed;
}

Notese que creamos la función mymodule_expose_replace para automatizar el proceso de reeemplzao.

Enviar un comentario nuevo