Quando comecei a pensar na versão 2008 do WinAjuda (que apesar do nome, é aque já está no ar), um dos principais recursos que gostaria de implementar era o cadastro de leitores. E, sendo assim, deveria fazê-lo de uma maneira simples, de modo a não dificultar algo que, por si só, já é chato.
Pesquisando por aí, encontrei uma solução bacana e multi-uso: um formulário de login inserido no layout do blog. Isso resolveu todos os problemas, pois quem já era cadastrado poderia fazer login no site, e quem não era, teria um link logo abaixo do formulário que o levaria direto para outro formulário, este o de cadastro.
O código, pego aqui, é o seguinte:
<li id="login">
<?php
global $user_ID, $user_identity;
get_currentuserinfo();
if (!$user_ID):
?>
<h2><?php _e(’Login’); ?></h2>
<form name=”loginform” id=”loginform” action=”<?php echo get_settings(’siteurl’); ?>/wp-login.php” method=”post”>
<div><label><?php _e(’Login’) ?>:<br /><input type=”text” name=”log” id=”log” value=”" size=”20″ tabindex=”7″ /></label><br />
<label><?php _e(’Password’) ?>:<br /> <input type=”password” name=”pwd” id=”pwd” value=”" size=”20″ tabindex=”8″ /></label><br />
<label><input type=”checkbox” name=”rememberme” value=”forever” tabindex=”9″ /> <?php _e(”Remember me”); ?></label><br />
<input type=”submit” name=”submit” value=”<?php _e(’Login’); ?> »” tabindex=”10″ />
<?php wp_register(”, ”); ?>
<input type=”hidden” name=”redirect_to” value=”<?php echo $_SERVER[’REQUEST_URI’]; ?>”/></div>
</form>
<?php
else:
?>
<h2><?php echo $user_identity; ?></h2>
<ul>
<?php wp_register(); ?>
<li><a href=”<?php echo get_settings(’siteurl’) . ‘/wp-login.php?action=logout&redirect_to=’ . $_SERVER[’REQUEST_URI’]; ?>”><?php _e(’Logout’); ?></a></li>
</ul>
<?php
endif;
?>
</li>
Claro, está uma salada, mas aí vai de cada um analisá-lo e personalizá-lo. O que importa é que funciona, e funciona bem: após autenticado, ao invés de ir para a área administrativa do WordPress, o leitor volta à página onde ele estava antes.
O “multi-uso” a que me referi no começo do texto explico agora. O código tem uma variável, que diz que, caso o leitor esteja logado no sistema, ao invés do formulário, apareça um menu. Já deu para pegar a coisa, né? Se não, vou explicar.
Aproveitando este código, é possível criar partes dinâmicas no blog, do tipo “se não estiver logado, verá isso; se estiver, verá aquilo / não verá nada”. Utilizei algumas vezes isso no WinAjuda (embora já tenha removido por motivos que não valem a pena citar). Aquele banner grande do topo, por exemplo, a princípio só era visualizado por quem não estivesse logado. Essa é só uma das várias aplicações possíveis.
O cerne do código é o seguinte:
<?php
global $user_ID, $user_identity;
get_currentuserinfo();
if (!$user_ID):
?>
Aqui vai o que o leitor não logado verá.
<?php
else:
?>
Aqui vai o que o leitor logado verá.
<?php
endif;
?>
Simples, não?
Logo que lancei o WinAjuda 2008, muitos me questionaram como fazer aquilo. Pois bem, aí está a resposta :).
Espero que esta dica lhes seja tão útil como foi e vem sendo para mim.
Até a próxima!
Ótimo, era o que eu precisava… ^^
Pena que veio em hora tarde… T_T
Já tinha usado esse formulario no meu blogue anteriormente e voltei agora a implementar no novo layout.
Dá um pulo lá e ve ele em acção. Procura na sidebar. É necessario carregar no titulo «login» para mostrar o formulario.
Posted by Mario Andrade
July 13th, 2007, às 8:33 am. #.
@ Henrique
Que bom! Mas, por que veio em hora tarde?
@ Mario Andrade
Ficou bacana :).
[]’s!
Posted by Rodrigo P. Ghedin
July 13th, 2007, às 9:38 am. #.
@Ghedin
Eu ia implementar em meu blog, porem não o encontrava em lugar algum, hoje estou colocando o novo layout no meu blog e ficou meio em cima da hora de ajeitar o login no site. Quem sabe uma proxima vez…
Excelente sir Ghedin!
Eu estava pensando em como fazer isso no meu blog, mas você salvou o dia.. ;)
Obrigado!
Posted by Thiago Mobilon
July 13th, 2007, às 5:56 pm. #.
Onde eu devo colocar este código?
Sou novato em blog’s, acho que deu pra notar (rs)!
[…] de login na página principal de seu blog. O BlogAjuda fez um pequeno tutorial explicando como adicionar o formulário de login ao seu tema. É um recurso que pretendo utilizar muito em meus projetos. Escreva um […]
Posted by Adicione um formulário de login no seu blog
July 14th, 2007, às 8:59 am. #.
@ Henrique
Ah sim, agora está explicado :).
@ Thiago Mobilon
;). Aliás, muito bacana seu blog.
@ triko
Em qualquer parte do tema.
[]’s!
Posted by Rodrigo P. Ghedin
July 14th, 2007, às 4:19 pm. #.
@ triko
Em qualquer parte do tema.
Mais como assim em quanquer parte Rodrigo.
Eu coloquei na sidebar e não deu nada. deu foi um erro na página, será que vc poderia me esplicar, mais é claro se não for encomodo.
Posted by Jandeilson
July 14th, 2007, às 9:44 pm. #.
Tipow, eu sei que é em qualquer parte hehehe, mas o que quero saber é como coloco, onde exatamente posso coloca-lo, pois coloquei no sidebar e deu erro tb.
E é só colocar o código lá? não precisa mais nada não?
[]’s
belo artigo
muito bom mesmo
estava querendo saber como funcionava
mais nem vou colocar em um blog com poucas visitas :D
@ Jandeilson e triko
O código está otimizado para o tema padrão do WordPress… É o que eu escrevi no texto: “Claro, está uma salada, mas aí vai de cada um analisá-lo e personalizá-lo“. Dei a faca e o queijo; não me peçam para cortá-lo ;).
@ Fernando
Obrigado!
[]’s!
Posted by Rodrigo P. Ghedin
July 16th, 2007, às 11:03 am. #.
Ok! Rodrigo, é desulpe por encomoda. Blz…
Posted by Jandeilson
July 17th, 2007, às 4:05 pm. #.
[…] semana o Rodrigo Ghedin ensinou no BlogAjuda como colocar o formulrio de login do WordPress na sidebar do blog. Esta dica […]
Posted by Customizando a tela de login do WordPress | Wordpress
July 17th, 2007, às 6:56 pm. #.
Olá desculpe-me a pouca informação sobre como lidar com os códigos e incomodar sobre esta modificação de login, mas creio que outro mais leigos como eu também apreciariam muito um pouco mais de luz sobre como executar esta modificação e onde, abraços a o leitores
Posted by Francis Zardoz
July 24th, 2007, às 9:10 pm. #.
amigo não quero que isto vá pro ar, mas por favor amigo poste algo sobre como melhorar a segurança no wordpress
sqlI tb!!!???
@ Francis Zardoz
O código é aquele, Francis. Você só precisa adptá-lo ao seu tema, e pronto. Mais fácil que isso, só se eu fizer a implementação por você :).
@ teste
Agora já foi :). Recomendo dar uma lida neste artigo: Como resolver o problema dos spams?.
[]’s!
Posted by Rodrigo P. Ghedin
July 26th, 2007, às 10:12 am. #.
O problema é que quando você clica em cadastrar usando como exemplo o WinAjuda ele vai para a tela de login do WP e “sai” do tema do blog com este plug-in http://www.jameskelly.org/wordpress-plugins/custom-login-and-registration-forms-plugin/ fica tudo dentro do tema. Veja no exemplo:
http://sandbox.jameskelly.org/
=)
@ Fabricio
Graaaaaaaande dica, Fabricio :D. Obrigado!
[]’s!
Posted by Rodrigo P. Ghedin
July 31st, 2007, às 4:07 pm. #.
Tenho uma duvida loooool
Isso so da para blogs do wordpress?
E não tem como fazer um sistema igual no HTML? pois uso sistema gratuito de hospedagem
Muito legal isso… Não havia visto esse post antes… valeu!
Posted by Felipe Fernandes
August 28th, 2007, às 8:39 am. #.
[…] Clique aqui para ler. […]
Posted by Login no Blog at Alam Braga
September 8th, 2007, às 11:16 am. #.
gostaria de saber como faz esse formulário de DEIXE UM COMENTÁRIO para eu colocar como cadastro de pedidos no meu blog
OBRIGADA PELA ATENÇÃO DESDE JÁ
Posted by Andressa
October 5th, 2007, às 8:12 pm. #.
Sinceramente li e li e li e não entendi não sei se por burrice, mas não vou pedir explicação pois aqueles que pediram foram tachados de idiotas nos comentários anteriores, como eu mesmo vi [O código é aquele, Francis. Você só precisa adptá-lo ao seu tema, e pronto. Mais fácil que isso, só se eu fizer a implementação por você :).] este post foi criado para aqueles que já teem uma noção de wordpress que infelismente não é o meu caso e é uma pena que ao pedir ajuda pessoas pensem assim ( ta aí vai e faz) por que o que o brasileiro não compreendeu e que lá fora já é normal é que quando nos ajudamos toda a comunidade cresce, uma ajuda poderia ter sido um pequeno passo para este blog mas era uma grande ajuda para a blogosfera.
Parabéns pelo post pena que ele foi copiado e colado.
Posted by Angelo Flavio
March 2nd, 2008, às 10:02 pm. #.
http://.oportuniblog.blogspot.com
Posted by marcelo de souza
March 22nd, 2008, às 2:44 pm. #.
glass home key you stay
Posted by landjhontoma
September 8th, 2008, às 3:20 am. #.
BlogAjuda © 2007.
Simple Grey theme developed by Rodrigo P. Ghedin.