Skip to content

Instantly share code, notes, and snippets.

@JokerMartini
Last active July 5, 2017 14:14
Show Gist options
  • Save JokerMartini/aa6d0f385869be03c2d4148e52834205 to your computer and use it in GitHub Desktop.
Save JokerMartini/aa6d0f385869be03c2d4148e52834205 to your computer and use it in GitHub Desktop.
attaches purchases to confirmation email in woocommerce
// https://gist.github.com/garrett-eclipse/78e1008c5a857bd8fb6b#file-woocommerce_emails_attach_downloadables-php
// Add Downloadable Products to Woocommerce Completed Order & Invoice Emails as Attachments
function woocommerce_emails_attach_downloadables($attachments, $status, $order) {
if ( ! is_object( $order ) || ! isset( $status ) ) {
return $attachments;
}
if ( empty( $order ) ) {
return $attachments;
}
if ( ! $order->has_downloadable_item() ) {
return $attachments;
}
$allowed_statuses = array( 'customer_invoice', 'customer_completed_order' );
if ( isset( $status ) && in_array( $status, $allowed_statuses ) ) {
foreach ( $order->get_items() as $item_id => $item ) {
foreach ( $order->get_item_downloads( $item ) as $download ) {
$attachments[] = str_replace( content_url(), WP_CONTENT_DIR, $download['file'] );
}
}
}
return $attachments;
}
add_filter( 'woocommerce_email_attachments', 'woocommerce_emails_attach_downloadables', 10, 3);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment