Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Order actions missing in 3.2.0 #17186

Closed
LiamMcArthur opened this issue Oct 13, 2017 · 18 comments
Closed

Order actions missing in 3.2.0 #17186

LiamMcArthur opened this issue Oct 13, 2017 · 18 comments
Labels
needs: author feedback The issue/PR needs a response from any of the parties involved in the issue.

Comments

@LiamMcArthur
Copy link
Contributor

LiamMcArthur commented Oct 13, 2017

Some order actions are missing since the new update. Usually, there is a list of ``Resend order emails** within the dropdown:

  • Resend New order
  • Resend Cancelled order
  • Resend Processing order
  • Resend Completed order
  • Resend Customer invoice
  • Regenerate download permissions

Since upgrading to 3.2.0 there are now only two options:

  • Email order details to customer
  • Regenerate download permissions
@XGLEN
Copy link

XGLEN commented Oct 13, 2017

Exact same issue for me.

@kloon
Copy link
Member

kloon commented Oct 13, 2017

The current option replaces the majority of the features with one option. If you are looking for the new order email option to store admin you can add that back with the following snippet https://gerhardpotgieter.com/2017/10/13/woocommerce-3-2-add-back-option-to-resend-admin-order-email/

It was removed because store admins have access to the store so can easily look up order details.

Let me know if that is what you were after.

@kloon kloon added the needs: author feedback The issue/PR needs a response from any of the parties involved in the issue. label Oct 13, 2017
@mikejolley
Copy link
Member

mikejolley commented Oct 13, 2017

To quote myself from the forum:

The old email dropdown in 3.1 showed event based emails. e.g. ‘resend processing email’ ‘resend completed email’. However, if you look at the email contents, all of them are pretty much identical, bar the first line which states what status.

Including emails like “resend refunded email’ also makes zero sense as it’s the same as the others, and may not even be relevant. e.g. order has not been refunded.

All you need to do is use the new Email order details to customer option in the dropdown. The same email from before is sent, and the intro text inside it (listing the status or asking for payment if needed) is contextual.

If you have status-specific text to add (which I assume you’ve added by overriding multiple emails?) you can still add this content to the customer invoice template. You can output different text with a simple if/else statement comparing the current order status.

Other than your custom text, the rest of the email content is identical.

Having event/status based emails when the order is not necessarily of that status is more confusing than a single option. New users to the platform ran into this and wondered why statuses were not changing and so on.

If anything, we could return the admin notification. But I think we'd need a little more justification for it's inclusion, since as the store owner you'd already be viewing the order so an email seems redundant.

@LiamMcArthur
Copy link
Contributor Author

I'll have to create a plugin to achieve this then. Occasionally, due to email issues etc - I need to resend the new order confirmation (which our receptionist files and also sends to the accountant). I also have functions that are fired based on certain events such as woocommerce_order_status_completed - so being able to re-send the completed email was useful if I need that particular function to be re-run (which performed actions such as creating a policy document).

@mikejolley
Copy link
Member

@LiamMcArthur Resending order emails never triggers woocommerce_order_status_completed and status change events. Those only fire when the actual order status is changed.

@XGLEN
Copy link

XGLEN commented Oct 13, 2017

the feature was used in 2 ways and we now have to rewrite:

1-the admin order is used as our packing slip to the warehouse, and any changes to the order it needs to be resent. With the new customer order email, the admin email is not resent. this is now fixed thanks to the snippet referenced above.

2-in dev environment when modifying the email templates, it was an easy way to test modifications done, simply resend the various emails from an existing order. Now the testing process becomes a lot more tedious

@mikejolley
Copy link
Member

Testing emails is something rarely done though? Why confuse new users just to allow this.. build something to send them.

I'll add the admin one back - that at least can be justified and shouldn't be confusing.

mikejolley added a commit that referenced this issue Oct 13, 2017
kloon pushed a commit that referenced this issue Oct 13, 2017
@UlliGT
Copy link

UlliGT commented Oct 19, 2017

Hi! We use some manually generated emails for our shop like "received money via bank transfer" (which cannot be automated) or "resend invoice" (with a different text than the initial order confirmation). Unfortunately these are now gone and I cannot figure out a way to bring them back. Any help is appreciated! Thanks!

@Spreeuw
Copy link
Contributor

Spreeuw commented Oct 19, 2017

@mikejolley While I agree that having a list of multiple emails all with practically the same information can be confusing, I don't think the customer Invoice email for this purpose is a good choice.
With my PDF Invoices & Packing Slips plugin, admins can attach a PDF invoice to any WC email. I know a lot of people have set the attachment of the invoice to the "Customer Invoice" (which is a logical choice, semantically). Except now, when there's an order in any status that should not receive the invoice, when the admin chooses to 'Email order details to customer', they unknowingly send the invoice. If you're showing an action to send the "Customer Invoice" email, I think it should mention that in the name of the action, explicitly calling it "Email invoice to customer" instead of "Email order details to customer". If you want a generic "Order details" email, imo you should create a separate email for this. Or at the very least send the email corresponding with the order status (although what should then be sent for pending orders?).

If you have status-specific text to add (which I assume you’ve added by overriding multiple emails?) you can still add this content to the customer invoice template. You can output different text with a simple if/else statement comparing the current order status.

Having custom texts in an email does not require overriding the email. I personally have added texts to emails using the woocommerce_email_before_order_table and similar hooks, looking at the email ID to determine if this information should be part of the email. I know many other people that have done this and none of this information will be shown in the Customer Invoice ('order details') email. There is also information that is not necessarily order status dependent but dependent on other information shown in a specific email. Not something you may want to show in a generic order details email.

@phemels
Copy link

phemels commented Oct 19, 2017

@kloon, I see the option "Resend new order notification (admin mail)" is back in woocommerce version 3.2.1
But when the e-mail is sent (manual) it not shows up in "order notifications" :(
Is that normal?

@Tobias-Conrad
Copy link

May we need an option to resend mail to customers of the current status.

@mikejolley
Copy link
Member

May we need an option to resend mail to customers of the current status.

We could but this would make it harder to know which emails to customise..

With my PDF Invoices & Packing Slips plugin, admins can attach a PDF invoice to any WC email. I know a lot of people have set the attachment of the invoice to the "Customer Invoice" (which is a logical choice, semantically). Except now, when there's an order in any status that should not receive the invoice, when the admin chooses to 'Email order details to customer', they unknowingly send the invoice. If you're showing an action to send the "Customer Invoice" email, I think it should mention that in the name of the action, explicitly calling it "Email invoice to customer" instead of "Email order details to customer". If you want a generic "Order details" email, imo you should create a separate email for this. Or at the very least send the email corresponding with the order status (although what should then be sent for pending orders?).

Wouldn't it make sense to attach the invoice only after a certain status has been reached? I.e. don't send for pending or on-hold, but attach for completed/processing.

Remember the status of the order can still be detected whenever this event is triggered.

@Spreeuw
Copy link
Contributor

Spreeuw commented Oct 25, 2017

Wouldn't it make sense to attach the invoice only after a certain status has been reached? I.e. don't send for pending or on-hold, but attach for completed/processing.

Remember the status of the order can still be detected whenever this event is triggered.

No, because status !== email. An email could be sent out to anyone for a specific status, and not all recipients will require (or should even be allowed) an attachment.
Hence, you configure the attachment per email, rather than per order status.

Spreeuw added a commit to Spreeuw/woocommerce that referenced this issue Oct 26, 2017
avoids confusion over wich email is actually sent (as discussed in woocommerce#17186)
@Saschaeh
Copy link

Saschaeh commented Dec 5, 2017

Hi - I hope this is relevant to the discussion.

I have the 3 options: 1: Email Invoice and Order details to customer, 2: resend order notification to customer and 3: regenerate download permissions(no sure what this does)

When i select the first option to send out order and invoice to customer it sends out email but does not attach the PDF invoice. (I also get an 'Undefined index' error from WPML but not sure it is relevant to invoice not sending out). The emails that get sent out automatically do have PDF attachment.

Anyone have this problem?

@kloon
Copy link
Member

kloon commented Dec 5, 2017

@Saschaeh the invoice email uses a different email template, you will have to get your functionality that attaches the pdf invoice adjusted to attach it to this email as well.

@Saschaeh
Copy link

Saschaeh commented Dec 5, 2017

Great thanks! One would assume that given the dropdown text "Email invoice / oder details" that this would be already be added as a function. Ill dig around for the function although I couldn't find anything earlier.

@Spreeuw
Copy link
Contributor

Spreeuw commented Dec 5, 2017

@Saschaeh WooCommerce does not have built in PDF Invoice capabilities, you will need a separate plugin for that. In the case of vanilla WooCommerce, the email itself acts as an invoice.

@Saschaeh
Copy link

Saschaeh commented Dec 5, 2017

@Spreeuw right thanks. In that case ill take it up with booster.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
needs: author feedback The issue/PR needs a response from any of the parties involved in the issue.
Projects
None yet
Development

No branches or pull requests

9 participants