Login do usuário
Pesquisa no site
Assine o RSS do Drupal-BR
Download
Itens ativos
Tutorial - Customizando a caixa de busca
A caixa de busca é um item do drupal que pode ser habilitado no arquivo 'page.tpl.php' que se encontra no na pasta do tema usado.
A entrada no tema é da forma
onde você poderá colocar aonde desejar no arquivo 'page.tpl.php', e ele terá por padrão o layout

Para mudar esse layout, podemos fazer da seguinte forma:
- copie o arquivo 'search-block-form.tpl.php' que existe na pasta do modulo da caixa de busca que se encontra em 'modules/search' para a pasta do seu tema.
Renomeie esse arquivo para 'search-theme-form.tpl.php'.
- na pasta do seu tema, verifique se existe o arquivo 'template.php', se não existir, crie um. Adicione a esse arquivo o seguinte código:
// Função para customizar a caixa de busca.
function <nome do seu tema>_preprocess_search_theme_form( &$vars , $hook ) {
// Para mudar o BLOCO da caixa de busca, você deve renomear essa função para
// '<nome do seu tema>_preprocess_search_block_form' e usar 'search_block_form'
// em vez de 'search_theme_form' nas customizações abaixo.
// Modifica os elementos do form da caixa de busca.
$vars['form']['search_theme_form']['#title'] = t('');
// Define o valor do texto padrão da caixa de busca.
$vars['form']['search_theme_form']['#value'] = t('Pesquisar ...');
// Adiciona uma classe customizada á caixa de busca.
$vars['form']['search_theme_form']['#attributes'] = array('class' => 'NormalTextBox txtSearch','onfocus' => "if (this.value == 'Pesquisar ...') {this.value = '';}", 'onblur' => "if (this.value == '') { this.value = 'Pesquisar ...'; } ");
// Muda o texto do botão 'submit'.
//$vars['form']['submit']['#value'] = t('Go');
// Refaz a versão renderizada ( apenas o form de texto, o resto se mantêm inalterado).
unset($vars['form']['search_theme_form']['#printed']);
$vars['search']['search_theme_form'] = drupal_render($vars['form']['search_theme_form']);
$vars['form']['submit']['#type'] = 'image_button';
$vars['form']['submit']['#src'] = path_to_theme() . '/images/search.jpg';
// Refaz a versão renderizada ( apenas o botão 'submit', o resto se mantêm inalterado).
unset($vars['form']['submit']['#printed']);
$vars['search']['submit'] = drupal_render($vars['form']['submit']);
// Coleta todas os elementos forms para tornar mais fácil a impressão do form como um todo.
$vars['search_form'] = implode($vars['search']);
}
?>
O código acima basicamente remove o texto "Buscar neste Site", adiciona uma classe customizada para a caixa de texto, muda o botão "Buscar" para uma imagem 'search.jpg' a sua escolha, e adiciona um textinho básico ( nesse caso, vai aparecer "Pesquisar..." ) na caixa de texto que automaticamente some ao se clicar em cima na hora de digitar pra pesquisa.
- no site, vá para 'admin/settings/performance' e limpe o cache do seu drupal e verifique a sua caixa de busca customizada aparece.
O resultado final será o seguinte:

Com a caixa aparecendo e funcionando normalmente, você poderá edita-la no css do seu tema como bem quiser.
Então é isso pessoal, até a próxima se Deus quiser. :D
- Versão para impressão
- Se logue ou se registre para poder enviar comentários
- 8686 leituras


