Warning: include(/home/bhost1/public_html/blog/wp-content/plugins/wp-super-cache/wp-cache-base.php): failed to open stream: No such file or directory in /home02/bhost1/public_html/blog/wp-content/plugins/wp-super-cache/wp-cache.php on line 65

Warning: include(/home/bhost1/public_html/blog/wp-content/plugins/wp-super-cache/wp-cache-base.php): failed to open stream: No such file or directory in /home02/bhost1/public_html/blog/wp-content/plugins/wp-super-cache/wp-cache.php on line 65

Warning: include(): Failed opening '/home/bhost1/public_html/blog/wp-content/plugins/wp-super-cache/wp-cache-base.php' for inclusion (include_path='.:/opt/cpanel/ea-php70/root/usr/share/pear') in /home02/bhost1/public_html/blog/wp-content/plugins/wp-super-cache/wp-cache.php on line 65

Warning: include_once(/home/bhost1/public_html/blog/wp-content/plugins/wp-super-cache/ossdl-cdn.php): failed to open stream: No such file or directory in /home02/bhost1/public_html/blog/wp-content/plugins/wp-super-cache/wp-cache.php on line 82

Warning: include_once(): Failed opening '/home/bhost1/public_html/blog/wp-content/plugins/wp-super-cache/ossdl-cdn.php' for inclusion (include_path='.:/opt/cpanel/ea-php70/root/usr/share/pear') in /home02/bhost1/public_html/blog/wp-content/plugins/wp-super-cache/wp-cache.php on line 82
WordPress nu imi mai trimite notificari pe email ! « BrainHost Blog

WordPress nu imi mai trimite notificari pe email !

Am vazut ca toata lumea a intampinat problema asta la un moment dat. Multi dau vina pe providerul de hosting, insa nu este vina lui. Datoria lui este sa asigure securitatea serverului si o buna functionare. Atata timp cat unul din clienti nu respecta regulile, sau o face involuntar, administratorul serverului este uneori nevoit sa introduca reguli noi de securitate pentru a preveni alte daune catre server.

Si ca sa nu deviem de la subiect, problema este urmatoarea. Ai un hosting, si pentru a-ti face un website asa cum doresti iti alegi platforma preferata. Fara sa stii prea multe detalii despre cum functioneaza platforma te trezesti ca trimiti mailuri aiurea catre multi oameni care nu au legatura cu site-ul tau. Administratorul vazand aceasta problema, tu fiind pe un shared hosting(fara ip-ul tau propriu), in momentul acela este nevoit sa introduca o regula de securitate care sa blocheze trimiterea de email-uri prin php. Daca nu face acest lucru risca ca ip-ul central al serverului sa fie vazut ca Spam.

Tu evident cand vezi ca lumea comenteaza pe blogul tau, insa tu nu primesti nici o notificare pe mail, incepi sa tipi la provider ca domle` de ce si cum. Raspunsul si rezolvarea la aceasta problema este foarte simpla.

Primul pas pe care trebuie sa il faci este sa iti creezi un cont de e-mail pe domeniul tau (ex. noreply@hosting.ro). Daca totusi email-ul pe care il folosesti pentru a primi notificarile este unul local (ex. blogul tau este blog.hosting.ro, si mail-ul pe care primesti notificarile este admin@blog.hosting.ro) nu va fi nevoie sa faci nici o modificare. Le vei primi pentru faptul ca mail-ul este local. Problema apare doar in momentul in care scriptul de php trebuie sa trimita mail catre un cont ce nu este local (ex. noreply@gmail.com).

Dupa ce ai creat contul de mail pe domeniul tau, trebuie sa descarci un plugin pentru wordpress numit wp-mail-smtp. Dupa ce ai descarcat pluginul trebuie sa il instalezi. Instalarea consta in dezarhivare si copierea directorului prin ftp in directorul /public_html/wp-content/plugins (asta daca blogul tau este instalat in directorul principal, daca totusi este instalat pe un subdomeniu, ex. blog.domeniultau.ro, directorul unde trebuie copiat pluginul va fi /public_html/blog/wp-content/plugins). Odata ce ai copiat directorul intri in panoul de administrare al blogului tau si mergi la Plugins si activezi pluginul wp-mail-smtp. Odata activat sub butonul Settings vei avea o optiune numita Email. Faci click pe acea optiune si ti se va afisa interfata pluginului unde trebuie sa faci anumite setari pentru a functiona corespunzator.

Pentru a va ajuta mai mult o sa va spun mai jos cum trebuie configurat pluginul:

From Email: noreply@hosting.ro (contul de mail creat mai devreme)
From Name: Blogul meu (ce nume vrei sa iti arate cand primesti mailul)

Mailer:
Bifam prima optiune si anume: Send all WordPress emails via SMTP

SMTP Options:
SMTP Host: localhost (pentru ca va trimite de pe hostul local)
SMTP Port: 25 (portul default pentru serverul de SMTP)

La encryption nu bifam nici o optiune, exceptie facand cazul in care aveti si un certificat SSL pe domeniul respectiv

Authentication:
Bifam a-2-a optiune: Yes: Use SMTP Authentication

Username: noreply@hosting.ro (username-ul de la contul de mail creat)
Password: parola (parola setata pentru contul de mail)

Odata ce ati introdus toate aceste date si finalizat configurarea, faceti click pe Update Options.
Dupa ce ati facut Update puteti face si un test. Introduceti adresa de mail pe care doriti sa primiti notificarile in casuta To: si faceti click pe butonul Send Test.

Daca primiti mail-ul de test, inseamna ca pluginul a fost configurat corect.
Daca aveti totusi neclaritati cu privire la configurare, puteti lasa un comment si va voi raspunde la intrebari.

  1. 9 Comments

    • Pingback: uberVU - social comments

    • Vlad says:

      Multumesc, mi-a fost de mare ajutor :)

    • BrainHost says:

      cu placere, si alta data :)

    • sergiu says:

      din intamplare am ajuns si eu aici, pentru ca ma confrunt o aceasi problema.
      dar chiar si dupa instalearea si configurarea programului, problema persista, si asa cum se explica si mai sus, pe emailuri nume@dome.ro se primesc emailurile, iar pe emailuri de yahoo nu se primeste nimic si vine eroare pe mailul nou creat:

      This message was created automatically by mail delivery software.

      A message that you sent could not be delivered to one or more of its
      recipients. This is a permanent error. The following address(es) failed:

      nume@yahoo.com
      SMTP error from remote mail server after end of data:
      host smtp-out-02.whm.ro [89.XX.XXX.XXX]:
      550 Messages should have one or no To headers, not 2.

    • BrainHost says:

      Problema la tine este ca iti trimite mesajul cu 2 headere, iar serverul de mail yahoo ti le respinge. Vezi sa nu cumva sa mai ai vreun plugin pentru mailing sau smtp si sa trimita si ala in acelasi timp.

    • sergiu says:

      multumesc pentru raspuns.
      asa mi ai zis si cei de la hosting, dar din pacate orice as face nu pot sa scap de aceasta eroare.
      am dezinstalat wp-mail-smtp si am lasat programul themei, dar tot aceasi eroare da.
      am modificat si codurile si tot degeaba, ori nu le modic eu bine ori nu am gasit codurile cu sursa problemei:

      }
      function sendEmail($fromEmail,$fromEmailName,$toEmail,$toEmailName,$subject,$message,$extra=”){
      $headers = ‘MIME-Version: 1.0’ . “\r\n”;
      $headers .= ‘Content-type: text/html; charset=UTF-8’ . “\r\n”;
      // Additional headers
      $headers .= ‘To: ‘.$toEmailName.’ ‘ . “\r\n”;
      $headers .= ‘From: ‘.$fromEmailName.’ ‘ . “\r\n”;
      wp_mail( $toEmail, $subject, $message, $headers );
      }

    • BrainHost says:

      Ai incercat si pe alt host sa vezi daca ai aceiasi problema? Sa nu cumva sa fie o problema de la serverul de hosting….

    • sergiu says:

      multumesc frumos pentru sugestie si pentru timpul acordat, ideea este buna dar sincer am obosit sa mai incert tot felul de metode. cei de la hosting zic clar, ca intre mailurile gazduite la ei nu exista restrictii si de asta merge sa trimita siteul emailuri, dar intre mailul de la site si yahoo nu se trimite pt ca yahoo respinge automat emailul deoarece contine doua headere.
      nu stiu ce sa mai cred sau sa mai fac.
      un lucru e cert, pe ziua de azi ramane asa, sa vad ce mai fac maine :)

    • BrainHost says:

      Sergiu, daca vrei sa facem un test pe serverele noastre, te rog sa ma anunti si vedem daca ai aceiasi problema si la noi.

Leave a Reply

Your email address will not be published. Required fields are marked *

*