Hostwinds Tutoriales

Resultados de búsqueda para:


Tabla de contenido


Cómo enviar correo desde un script PHP
¿Qué pasa si esto es con un complemento de WordPress?

¿Por qué mi script PHP no envía correo?

Etiquetas: Email,  WordPress 

Cómo enviar correo desde un script PHP
¿Qué pasa si esto es con un complemento de WordPress?

Hay muchas razones por las que es posible que no pueda enviar correos electrónicos desde su código PHP. Una de las razones más comunes sería que el script no está utilizando la autenticación. La mayoría de los servidores de correo electrónico requieren que autentique la cuenta de correo electrónico antes de poder enviar correos electrónicos. Esto es para evitar cualquier posible suplantación de los correos electrónicos y los correos electrónicos no autorizados que se envíen a través de las cuentas de correo electrónico.

Si bien Hostwinds no suele ayudar con la codificación o el desarrollo del sitio, aquí hay una breve guía sobre un ejemplo de script PHP para enviar correos electrónicos.

Cómo enviar correo desde un script PHP

Se pueden usar varias formas en PHP para enviar correos electrónicos. En este ejemplo, utilizaremos el phpmailer. Asegúrese de tener la dirección de correo electrónico que enviará correos electrónicos ya creados en el servidor. Para cpanel, tenemos una guía en como hacer eso aqui. Una vez que haya creado esa dirección de correo electrónico, puede continuar con los pasos a continuación.

Dado que esto se hará usando código PHP, puede crear un archivo PHP de prueba. Por ahora, nómbralo como sendemail.php

Después de crear la página, querrá editar ese archivo. Puede editar este archivo directamente en CPANEL o en su computadora local. Si lo edita en su computadora local, asegúrese de cargar el archivo de vuelta a su servidor.

Una vez que tenga el archivo abierto. Deberá escribir algo de código. Aquí hay un pequeño fragmento que usaremos,

\ <? PHP

// This will allow us to incorporate the PHPMailer class into our program. 
// This assumes that PHPMailer is located in a folder called PHPMailer in the same directory.
require\_once("PHPMailer/PHPMailer.php");

// This enables us to use the namespace of PHPMailer to instantiate the class.
use PHPMailer\\PHPMailer\\PHPMailer;
    // Make sure that you have included the necessary PHPMailer files to be used with this code
    $t\_mailer = new PHPMailer;

    // Set the server to use SMTP Authentication (Check Username and Password)
    $t\_mailer->SMTPAuth = true;

    // The username that will be used to login to the webserver to send the email.
    $t\_mailer->Username = "from@example.com";

    // The password that will be used to login to the webserver as well.
    $t\_mailer->Password = "SecretPassword";

    // This is the method of authentication with the webserver.
    $t\_mailer->SMTPSecure = 'tls';

    // This is the port that your SMTP server is using to connect.
    $t\_mailer->Port = 587;

    // Here you will set the from address. This would be the email account that is sending the mail.
    $t\_mailer->setFrom("from@example.com", "Name for the owner of the Account");

    // Here you will add the addresses that will be receiving the mail. You can add more than one if you would like.
    $t\_mailer->addAddress("to@example.com", "Name for who is being sent the email.");

    // This is where you can set the subject for the email being sent.
    $t\_mailer->Subject = "Here you can put the subject of the message.";

    // Here you will type out the text inside the email that is being sent.
    $t\_mailer->Body = "This will be the message body that is sent.";

    // This is a basic If statement, that can be used to send mail. 
    if(!$t\_mailer->send()) {
        // If the mailer was unable to send the email, it will display an error message.
        echo "Message has not been sent!";
        echo "Mailer Error: " . $t\_mailer->ErrorInfo;
    } else {
        // If the mailer was able to send the email, it will say sent successfully.
        echo "Message has been sent successfully!";
    }
?>
  1. Asegúrese de que cuando esté escribiendo el código anterior o usándolo como una referencia. Que reemplaza las direcciones de correo electrónico y las contraseñas que se utilizan. Si estos son incorrectos, o la cuenta de correo electrónico no existe en el servidor, el correo electrónico no lo enviará.
  2. Guarde el documento para que se mantengan sus cambios y se puedan usar para enviar el correo electrónico.
  3. Cuando visite la página, simplemente creó dentro de su navegador web. Debe enviar un correo electrónico. Esto fue solo un ejemplo que podría ser utilizado. Con el código, puede hacer casi cualquier cosa, desde el envío de correos electrónicos de confirmación a los boletines.

¿Qué pasa si esto es con un complemento de WordPress?

Con respecto a ser incapaz de enviar un correo electrónico con un complemento de WordPress, el problema puede ser que la cuenta de correo electrónico no existe. Asegúrese de que exista la cuenta de correo electrónico y la contraseña que se está utilizando es correcta.

También hay un archivo de registro que se puede ver para los mensajes de error cuando el plugin intentó enviar correos electrónicos. Ese mensaje generalmente le dará una breve descripción o código sobre por qué no se pudo enviar el correo electrónico. A partir de ahí, sería más fácil diagnosticar por qué el plugin no pudo enviar el correo electrónico.

Aunque no asistimos con el lado de la codificación o el desarrollo de las cosas, estamos más que felices de echar un vistazo a esto para usted.Si tiene problemas enviando correos electrónicos y le gustaría recibir ayuda, siempre estamos disponibles y haremos todo lo posible para señalarlo en la dirección correcta.

Si tiene alguna pregunta o desea ayuda, comuníquese con nosotros a través del chat en vivo o por enviar un ticket con nuestro equipo de Soporte Técnico.

Escrito por Michael Brower  /  octubre 30, 2017