A Aldeia Numaboa ancestral ainda está disponível para visitação. É a versão mais antiga da Aldeia que eu não quis simplesmente descartar depois de mais de 10 milhões de pageviews. Como diz a Sirley, nossa cozinheira e filósofa de plantão: "Misericórdia, ai que dó!"

Se você tiver curiosidade, o endereço é numaboa.net.br.

Leia mais...

Informática Numaboa - Tutoriais e Programação

Envio de emails pelo Joomla

Dom

10

Jan

2010


11:05

(1 voto de 5.00) 


Várias vezes me deparei com a necessidade de incluir no código de extensões do Joomla a possibilidade de enviar emails. Normalmente a função mail() do PHP é usada para executar estas tarefas, mas... sempre tem um mas!

A função mail() do PHP é uma mão na roda: fácil de usar, rápida, só tem um porém - precisa de um MTA instalado no servidor. Como nem sempre é este o caso (meu serviço de emails está num outro servidor), esta solução não me serve.

Configuração do mailer Agora vamos ao Joomla. Por default, o Joomla instala o PHPMailer. Este pacote é incorporado ao sistema e pode ser configurado pela área administrativa nas configurações globais na aba server (servidor). Uma das opções é usar o SMTP para acionar um MTA externo, qualquer servidor de emails externo, tanto que tem uma porção de gente usando o gmail.

Os scripts do PHPMailer ficam em /includes/phpmailer/ que, se você der uma olhada no código, apenas apontam para os scripts que ficam em /libraries/phpmailer/. Não há a necessidade de chamar estes scripts diretamente porque o Joomla oferece a possibilidade de acionar o sistema de envio de emails de acordo com as configurações globais.

A classe JFactory disponibiliza o método getMailer() para criar um objeto mailer que, depois de devidamente preenchido, pode ser acionado para enviar emails. Observe o código abaixo:

Exemplo de código
1
2
3
4
5
6
7
8
9
10
11
12
$destinatario = 'admin\@numaboa.com';
$remetente = 'ze\@dominio.com.br';
$nome = 'Zé das Couves';
$assunto = 'Teste de mailer';
$mensagem = 'Isto é um teste.';
...
$mail =& JFactory::getMailer;
$mail->addRecipient( $destinatario );
$mail->setSender( array( $remetente, $nome ) );
$mail->setSubject( $assunto );
$mail->setBody( $mensagem );
$mail->Send();

Coloquei as variáveis no exemplo de script só para facilitar o entendimento. Num componente ou módulo Joomla, estas variáveis geralmente são fornecidas por um formulário e podemos referenciá-las com $_POST[nome do campo] ou, de forma ainda mais elegante, através de $nome = JRequest::getVar( 'nome', '', 'post', string ).

mfxbroker commarier посуда официальный сайтменю никас харьков александр лобановскийпродажа пиломатериаловчто случилосьлобановский александр

Informações adicionais