I am new to wordpress. I am working on Localhost with woo-commerce. When a new user is registered, email verification link is not sending to the user and also for admin.
Should i need SMTP for this or any other settings to fix.
In localhost, an email will not be sent due to lack of access to the server
This problem will be solved by transferring the site to a server and making the site online
If you forgot your password, you can change it through the database
phpmyadmin
your database > wp_users
It is possible for WordPress to send emails on localhost.
You can use SMTP or find out what is preventing emails from being sent.
For SMTP, I recommend using the plugin WP Mail SMTP By WP Forms. I should add that I don't particularly like this plugin, but it works!!
If you don't want to use the plugin, you can also google 'how to use SMTP in WordPress without a plugin.'
To find out what might be causing the issue, you can use the plugin Check & Log Email. I highly recommend this plugin! It helped me find out the cause of my problem in minutes.
If the problem is that WordPress is trying to send emails from "WordPress#localhost" (I suspect it is), then you can just change the 'from address' and you'll be on your way.
WordPress has a filter for changing the 'from address' used by wp_mail. So you can easily do something like so:
add_filter('wp_mail_from', 'get_admin_email');
if(!function_exists('get_admin_email')) {
function get_admin_email($email) {
$wp_from = get_option('admin_email');
return $wp_from;
}
}
The code above tells WordPress to use the admin email address as the 'from address'.
Further reading:
WordPress Docs
My Blog
HTH,
Mwale
Related
I am trying to set up emails on my WordPress website using the WP Mail SMTP plugin and the Gmail API. (WordPress version 5.5.1; WP Mail SMTP Version 2.4.0)
The website I am trying to set this up on, https://souheganvalleychorus.org/ is part of a GSuite for non-profits domain.
I have followed the WP Mail SMTP setup instructions on:
https://wpmailsmtp.com/docs/how-to-set-up-the-gmail-mailer-in-wp-mail-smtp/
with meticulous care. However, when I get to the final step, where I click on the WP Mail SMTP plugin's setup page, and click on "Allow plugin to send emails using your Google account", get prompted with some dialog boxes, choose the email address that I used to set up the Gmail API, it finally comes back with a webpage that says simply:
Unauthorized
Back {a link}
the URL for this page is:
https://souheganvalleychorus.org/wp-admin/options-general.php?page=wp-mail-smtp&tab=auth&code=4/4AEw2mlaJPMgOg7boWHzLLDIJdg0Gwb98vGyJfrteQXcOE5cnL1HMj5wX6QSRZQ0x2rhrbxlzqKPBsF7uokdWCg&scope=https://mail.google.com/
I have been pulling my hair out trying to figure out what is happening, and what I can do to fix it. The 'Unauthorized' provides absolutely no additional information.
I have previously set up the WP Mail SMTP plugin to use the Gmail API, on another website (also a GSuite for non-profits domain, but a different one), and succeeded in that case. I seem to recall having had some problems setting that one up, too, but don't remember how I resolved the issue. When you do something (especially with such an arcane interface as the Google API interface) once in a blue moon, you tend to forget the details. I have tried to compare the two Gmail API setups, and can find no difference that would explain the failure in the current case.
I sure would appreciate anyone's help in resolving this. Until I do, I can't send email from the website. I've also tried using WP Mail SMTP's "Other SMTP" option, with the Gmail SMTP credentials, but that fails to authorize, so I'm stuck...
Help! (and thanks!)
Experiencing issue with WP plugin, contact form 7. When I fill in the form and submit, I receive a success message stating it was sent yet I don't receive it in my emails.
The mail is not in my junk and I only received the message in my email when I input the email its being send to!?
The email it is going to is an exchange account. I can see the emails coming through using a contact form submission on the WP backend. But would like to resolve this issue.
Form
[text* your-name placeholder "Name"]
[email* your-email placeholder "Email Address"]
[text* your-dob placeholder "DOB"]
<p>Which Challenge(s) would you like to enter?</p>
[checkbox* select-challenge "1" "2" "3"]
</br>
Please tick here that you have read and accepted the [popup_trigger
classes="popmake-food-challenge-tcs"]
<u>terms & conditions</u>[/popup_trigger] for entry & participation.
[acceptance acceptance-997]
[submit "Send"]
Mail
To: myname#company.com
From: Website
Subject: Challenge
Reply-To: [your-email]
From: [your-name] <[your-email]>
Eating Challenge Registration
Name: [your-name]
Email: [your-email]
DOB: [your-dob]
Challenge(s): [select-challenge]
I also checked with website host that they use wp_mail() and was confirmed they do. As other contact forms send - bar this one.
Try setting the from: email address to wordpress#yourdomain.com. Contact Form 7 support recommends setting the from address as being on your own domain, so that the website's mailer program doesn't think it is spoofing the email being sent (sending it from an incorrect email address).
If that doesn't work, best to use a plugin like WP Mail SMTP Plugin.
I set it up to send contact form emails through our Gmail account, which worked well. Instructions here.
SMTP Plugins are a Band-aid Solution
The reason people use SMTP plugins is because they have not set up their own domains properly; so, they route their emails through their email hosting company under the expectation that THEIR domain is both set up properly and permissive enough to accept the email that needs to be forwarded. So, let's say your website is at example#mywebsite.com and your email is example#gmail.com, then you can use an SMTP plugin to send an email to gmail.com, and then gmail resends it on your behalf.
As you can see, this is a clunky work around, and does not actually fix the problem of not being able to send email from your website directly. There are a few use cases where this is a problem:
If you want to actually send the email from example#mywebsite.com and not expose your example#gmail.com address to the public.
If your email provider does not support SMTP.
Some anti-spam tools may block emails routed this way, because SMTP can be a sign of spoofing through a hacked account. This almost always leads to problems when using the Mail(2) feature to send confirmation emails to the client since you are pretty much guaranteed that some of them will use spam filters that will block it.
You may also need to send emails through other means (not contact form 7) that does not work with your SMTP plugin.
A Better Solution
The best way to fix deliverability issues to to set up your DKIM, SPF, and PTR records properly in your DNS.
If you are using cPanel as most hosting companies seem to do these days, you need to go to EMAIL > Email Deliverability and it will show you warnings if you need to update your DNS. If you do, just copy the records it auto generates into your Domain's DNS and this should fix the problem. Unlike trying to route through someone else's server to send emails, this will set up YOUR server to send them properly thus alleviating all of the above mentioned issues.
This is just as easy to set up as most SMTP plugins, and makes it so you don't have to clutter your WordPress install with unnecessary plugins.
If you do not have cPanel access, just contact your Domain Hosting provider and ask that they setup your DKIM, SPF, and PTR. If your Domain Hosting provider and your Web Hosting provider are two different companies, you may need to request the proper DNS records from your web hosting company to either put in your self or give to your domain hosting company.
when I have a problem about wp contact form I always solve that with using smtp plugin. I suggest you to use wp smtp mail plugin.
Easy SMTP WP plugin page on wordpress.org
If any problem after using smtp plugin, reply this post I will try to help you again.
I have this problem in my website.
Some hosting companies block automatic email sending, because some user uses the host for sending email marketing. So, I think you can contact your host provider to solve this problem.
I am using "RealHomes Theme" for my project but the problem is while registering as a new user it is successfully adding but unable to get an email verification for the user.
Try disabling all of your plugins and using the default theme.
If you're able to register and get the email, turn on all plugins and try again.
If you still get it, it's an issue with the theme and you should take it up with the developer.
If not, disable all plugins and change back to your RealHomes theme.
If you get it from there, it's a plugin conflict and you'll have to diagnose that and remove/fix the plugin causing the issue.
However, if you can't get it at all, even with the theme/plugins disabled; it's probably because all-to-often WordPress emails get sent into spam or the void, and it's then an email issue which is harder to diagnose (is it your server, potential blacklisting [use MXToolbox to confirm], email provider issue?).
We had this issue a lot, and to mitigate we started to use wpMandrill and enabled DKIM and SPF on all domains we send from which increased out WP email delivery rate to almost 100%.
Make sure you have DKIM and SPF records for your domain, and are sending from an account that exists on the same domain such as:
https://example.com/ should be sending emails from something like WordPress#example.com
I received several mails from wordpress#mydomain.tld inviting me to connect to my administration area to moderate comments.
Example :
WordPress 10/21/2013 04:22:00
A new comment on your post is waiting for your approval.
Comment: [...] You have new comment! Go link ... [...]
Please visit the Administration panel:
Sing in
Link in "Si*ng* in" redirects to a phishing page. I made several changes by changing the administration of wordpress email, but I continue to receive these messages.
I wonder if it is possible to stop sending mail wordpress# mydomain.tld
No, you can't stop someone else from pretending they are sending email from your domain. Best you can do is change the email address your wordpress instance sends email as, and then mark any email coming from the old email address as spam in your email client of choice.
I always change the default email account that Wordpress uses to send mail to something unique because of this very reason. There is no way you can prevent scammers from imitating an email address.
There are several plugins that will change the Wordpress From Email info, but to do this programmatically you can use:
function hidden_mail_from($old) {
return 'wordpress_secure#yourdomain.com';
}
add_filter('wp_mail_from', 'hidden_mail_from');
function hidden_mail_from_name($old) {
return 'My Wordpress Install 1234';
}
add_filter('wp_mail_from_name', 'hidden_mail_from_name');
If you aren't a developer I would recommend the SMTP plugin: http://wordpress.org/plugins/smtp/
And most of the other SMTP plugins on the Plugin Repository: http://wordpress.org/plugins/search.php?q=SMTP
If you are really interested you can look at the mail headers in your email client to determine the origin server of the email and potentially create a rule to filter spam out based solely on that header but the plugins are much easier.
I am using contact form 7 one of my wordpress site that using vantage app theme. But problem with sending contact mail. when I am trying to send mail get following message
"Failed to send your message. Please try later or contact the administrator by another method."
Thanks
The only problem is you can send emails from you hosting domain email accounts only.
so check your to email address that is comes under you domain name
I hope this will solve your problem
This is almost certainly due to your particular hosting setup. There are a host of issues that can stop the sending of emails. It depends entirely on your local Server & WordPress configuration.
You will need to investigate this issue for your particular local configuration. See Contact Form 7 Email Issues.
By the way it's not due to "hosting php version or maybe mysql version" - it's due to basic stuff that you can address by working through the issues in the link.
I faced the same issue some time back. Are you using any WordPress caching plugin? like WP super-cache? I resolved this issue by following below steps on WP Super-cache.
Go to WP Super-Cache Admin panel
Go to “Advanced Tab”
Search for “Add here strings (not a filename) that forces a page not to be cached.”
Add '/contact/' (your Contact Form Page name)
Save Strings.
I was able to fix this problem after I spoke to my client's hosting company. The host claimed that the only requirement they had for emails to be passed through their system was that either the To: or the From: field contain an email address under the hosted domain name. They uploaded a test script (an ordinary PHP mail script) where the From: field was set with an address within the domain and the To: field was set to an outside email address. That script worked. I confirmed that I had the To: field in CF7 set to an email address within the appropriate domain but the form didn't function. Then I set the From: field to an email address within the domain and the form finally functioned. It appeared, therefore, that the host was incorrect about the To: field's address being within the domain being sufficient.
Into the "Form"(inside the mail menu) section you've to give the domain name of your site. And inside the message body use the short codes which will appear into the top of the mail menu.
And when you create a form field such as "name" / "email" / "phone no" etc, then give a name to them. Those name turns into a short codes like
[your-name]-Name, [your-mail]-Email(those are defaults, you can give any name according to your choice) etc, copy the short code and paste into the message body, don't write it only copy and paste.
Hope this will help you.
This suggestion depends on how your hosting provider deals with mail headers:
So, I have made all tests (javascript conflicts, etc.) and decided the problem could only be from my host. I contacted them and they told me that in email header, the "From:" SHOULD be exactly the same as the email I configured to receive the messages from my visitors.
As far as I understood, by default "Contact Form 7" uses visitor email to put it in "From:" but some host providers do not allow that.
My host provider don't even allow mail() function so I had to install WP MAIL SMTP.
So, resuming, I just added this to all my forms in "Additional headers":
From: your#domain.com
This means, you have to insert one email with same domain name as your website, otherwise your hosting might not send the email.
I lost a couple of hours with this...
Maybe is another plugin incompatible with contact form7 plugin.
Deactivate all plugin one by one and try send email.
I fixed the problem. webadmin email account was not setup. Once I setup the email account it is working fine.