Login na horizontalSubmitted by pedrofaria on qua, 11/03/2009 - 13:19 |
Hoje, pela manhã, enquato dava uma navegada pelo site da Trellon achei a solução para um problema comum que, provavelmente, quase ninguém sabe.
Criar um login na horizontal sem ter que escrever um form em html.
O grande lance é que o tema permite usar o hook_theme no template.php onde o hook eh o nome do seu tema... ex: garland_theme. Agora tudo fica mais fácil pois podemos criar itens para novos itens de tema ou sobrescrever existentes.
Bem, vamos à solução:
Primeiro precisamos criar o hook_theme para dar as coordenadas ao template engine do Drupal dizendo para ele que deve usar o template "user-login-block" para o form id "user_login_block" no arquivo template.php .
<?php
//....
function meutema_theme($existing, $type, $theme, $path) {
return array(
//...
'user_login_block' => array(
'arguments' => array('form' => NULL),
'template' => 'user-login-block', // this is the name of the template
),
//...
);
}
//...
?>Agora que já dissemos ao Drupal para renderizar o formulario "user_login_block" usando o template "user-login-block", vamos criar o template.
Crie o arquivo user-login-block.tpl.php no diretorio do seu tema e coloque o código que desejar. Para você ver e testar essa solução eu fiz da seguinte forma:
<?php
$form['name']['#title'] = $form['pass']['#title'] = '';
$form['name']['#size'] = $form['pass']['#size'] 6;
?>
<div id="user_login_block">
<div id="user-name"><?php print drupal_render($form['name']); ?></div>
<div id="user-pass"><?php print drupal_render($form['pass']); ?></div>
<div id="user-login"><?php print drupal_render($form['submit']); ?></div>
<div id="user-links"><?php print drupal_render($form['links']); ?></div>
<?php print drupal_render($form); ?>
Template modicficado!
</div>Agora falta o CSS para colocar um campo do lado do outro... como eu não sou expert nisso, vou deixar para algum design resolver isso mas acho que com float: left; resolveria.
Simples né? Agora limpe o cache e atualize a página para ver o resultado.
flw.
Fonte:
http://trellon.com/content/blog/theming-user-register-form-d6
- 5605 leituras
\o/
Valeu Pedro, como sempre você correndo atrás das coisas pra ajudar a galera!
OBRIGADÃO! @:D
Enviar novo comentário