Wordpress ecommerce email - wordpress

I have to deliver a WordPress eCommerce website but what if I give the role of editor to my client will he still get emails about the orders received on the website? Actually this is my first eCommerce website

The e-commerce email (the address that receives the order notification) should have it's Name and password, it is sure that he can receive the received order notification from the email if you provide him with the credentials of this email address. If he could access the website on the backend he could also access the orders.

You just have to write the email of the client in the Settings section of the WordPress. Your client will still get emails.

He can even get the emails without getting the complete access to the wordpress. This is how I am doing it for my client at maheenandco. You just need to put his email address. You can use multiple emails. You will find the option in woo commerce settings.

Related

Woocommerce + GSuite - Transactional emails best practices? Anyone?

I've lost my brain the last couple of days trying to find the best solution for handling my transactional woocommerce emails, so that customers and store managers (on G Suite at the same domain as my site) get notified of new orders, etc.
TL;DR: I have a Woocommerce and want the next e-mail behavior and I wonder what's the best way to achieve this:
Have woocommerce emails don't go to my customer spam folders and get
notified to store.manager#mydomain.com and myemail#mydomain.com
G-Suite email accounts.
Use the info#mydomain.com and "MyDomain" as the "from email and name" in WooCommerce. Whether the info#mydomain.com is an e-mail
alias of my G-Suite email or a server side e-mail I don't care. What
I don't want is to configure a new G-Suite email just to serve
transactional e-mails.
So I'll describe my original situation, problem and the solutions I've read about:
When I setup the Woocommerce e-mails in settings, using a #mydomain.com email account two things happened:
Customers would receive the e-mails on their spam folder.
Store managers did not receive any e-mails whatsoever.
We also have this context info that might be of help:
We are just starting as an e-commerce, so no big load of emails...
We use the cheapest G-Suite plan (with up to 5 accounts) with our domain in Google Domain, so I don't want to use one of those account just to handle the transactional e-mails.
So I found the alias option and setup different aliases to both send and receive e-mails. E.g: "info#mydomain.com".
I read the official Woocommerce email-FAQ, and a bunch of other links in the Wordpress Forums and Stack Overflow, I came to find this three courses of action:
Setup split delivery and let my transactional e-mail address run from C-Panel.
Use an SMTP Plugin and set it up to use the Gmail API.
Create a subdomain and set WooCommerce/PHPServer to send the emails and just use my G-Suite emails as recipients.
I've read tons, and find myself in a loop where I don't know what's the best, future proof option, but this is what I've tried for every option:
I desisted on the idea of split delivery as soon as I found the e-mail aliases option in GSuite.
I did activated it and it solved one of my two problems, customers were no longer getting my emails to spam, but the Gmail API won't let me change the "from address" nor even the "from name", unless I select the alias as the default e-mail address on Gmail, which is not something I want; and if the alias (set up as mailer) and recipient is the same, then GSuite won't show the email in the inbox, but in the sent folder (and marked as read). So If the store manager email (storemanagername#mydomain.com) has an alias used to send Woocommerce emails (info#mydomain.com) he won't be notified for new orders.
I configured a domain alias on my Google Admin settings as a subdomain (store.mydomain.com) (which generates a new email alias with that subdomain) then I created a subdomain on my hosting provider (pointed at nothing for the moment) and had my hosting setup the Google MX records for my subdomain. Without the SMTP Plugin it does nothing, regardless of which e-mail I put in the from and recipient fields on the WooCommerce settings. With the SMTP Plugin things kind of work, using the alias#subdomain.mydomain.com as the recipient, as emails do arrive to inbox (instead of the sent folder) but doubled the regular mail and a huge postmaster notice, about how the domain alias "subdomain.mydomain.com" doesn't exist.
As a related note: Google per default generates a test domain alias which is mydomain.com.test-google-a.com when I use the alias e-mail with this alias domain recipient in woocommerce and the regular G-Suite in the from field on Woocommerce things pretty much work, except that my customers still get the emails to their spam folders.
How would I setup mailgun or sendgrid to use info#mydomain.com as the sender e-mail address? Would that work better?
I'm not new to wordpress, but definitely I'm a noob at WooCommerce and email protocol, setup in general.
Do you think you might exceed the G Suite sending limits? That'd push you towards the SendGrid/Mailgun/etc. solution for outgoing info#mydomain.com mail, with G-Suite accepting the incoming mail however you'd like. Though if it's important to avoid "reply-to" type addresses, make sure to choose a provider/plan that supports running off your domain (SendGrid calls it "domain authentication", Mailgun calls it "domain verification", etc.).
That will likely also solve that initial problem you described in your point #2 (assuming it was due to mail being treated as local-to-the-web-server).
If you take that approach, make sure to triple-check your SPF/DKIM/DMARC setup. And depending on which provider you go with, some of their WordPress/WooCommerce integration plugins are...not great. I've been working on summarizing the providers and their plugins if it's of any help.
And I had a little trouble following who needs to get copies of what, but there's the woocommerce_email_headers filter if it would be helpful to BCC the store managers. You could even do it selectively.

Contact Form 7 showing sent message but not receiving email

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.

Woo commerce orders mails are not coming in inbox, error message- could not instantiate mail function

I am using Woo commerce storefront theme and my orders emails are not coming into my inbox and then installed WP mail log and error message is could not instantiate mail function please provide me solution
used pepipost plugin to bypass phpmailer function now mail is sent usinng SMTP.
first of all, need to create an account on pepipost and verify your domain then an API key will generate paste that API key in your pepipost wordpress plugin
One more tip I will add here. Make sure to use the server's IP address where your website is pointing as SMTP hostname .
Because email from website (that is contact form) are used to run from the server where your website is pointing.

woocomerce - admin is not received any email when order is placed

I have set all parameters in woocomerce -> settings-> email-> new order , processing etc but email is not sended to admin or email id which i have provided in these option. Yes, email is sending to customer which has purchase items of site. Means email is working for customer but not for admin.. I have tried to change status of order but still mail is sended to customer but not admin. Can you help me to get out of this.
Thanks
Try deactivating all other plugins besides WooCommerce to see if that helps. WooCommerce uses the wp_mail provided by WordPress. As long as other emails are sent, this one should be sent.
A few things to look for:
Make sure New Order emails are enabled in WooCommerce > Settings > Emails > New Order.
Be sure the order is not placed on Pending Order. Keep in mind those emails are not sent to you since the order hasn't been completed yet thus no email.
A spam blocker might be the cause of the issue. The best way to avoid this try a dedicated SMTP provider like Mandrill which resolves most issues with emails not sending from the host. Mandrill has a free plugin.
Hope that helps!
Is it the WordPress admin email? I've just had this problem on version 4.1; i was not able to use the wordpress admin email as recipient of emails from new orders; but any other email i set for recipient when new orders worked just fine; all except the wordPress admin email. Weird hu? I guess i'll have to deal with that later.

Phishing mail Wordpress Admin

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.

Resources