WooCommerce Conditional Email Text (User Role, Product Category)

Other Hooks: https://businessbloomer.com/woocommerce-add-extra-content-order-email/

[php]

/***********************************************************************
* WooCommerce E-Mail
* Add Tax notice to Order Mail after order table
***********************************************************************
*/

add_filter(‚woocommerce_email_after_order_table‘, ‚add_sowi_holding_tax_notice_to_mail‘);
function add_sowi_holding_tax_notice_to_mail( $order ) {

//Get user roles
$user_id = $order->get_user_id();
$user = new WP_User($user_id);
$user_roles = $user->roles;

//Get order Category Slugs
$i=0;
foreach ( $order->get_items() as $item ){
$categories[$i] = get_the_terms( $item[‚product_id‘] , ‚product_cat‘ );
$category_slugs[$i] = $categories[$i][0]->slug;
$i++;
}

if ( in_array(‚best-innsbruck‘, $category_slugs) || in_array(‚best-klagenfurt‘, $category_slugs) ) {
//Text für BeSt Produkte
if ( in_array(‚vorsteuerberechtigt‘, $user_roles ) ) {
//Text für Vorsteuerabzugsberechtigte Kunden
echo ‚<p>Alle Preise exkl. MwSt. Verrechnung über Bluekon Media GmbH.</p>‘;
} else {
//Text für nicht Vorsteuerabzugsberechtigte
echo ‚<p>Rechnungsbetrag enthält keine Umsatzsteuer, steuerbefreit aufgrund § 6 Abs.1 Z 11 UStG. Verrechnung über SoWi-Holding.</p>‘;
}
} else {
//Text für C&C / ML Produkte
echo ‚<p><em>Alle <strong>Messepakete</strong> werden direkt über die SoWi-Holding verrechnet und der Preis versteht sich netto, wir verrechnen keine MwSt. Alle <strong>Medienpakete</strong> werden direkt über basics Media verrechnet und der Preis versteht sich netto, zzgl. 5% Anzeigenabgabe und 20% MwSt.<em></p>‘;
}

}

[/php]

Category Slugs werden nicht auf die Unterste Ebene durchsucht…

Array ( [0] => best-innsbruck [1] => best-innsbruck [2] => best-standausstattung [3] => best-standausstattung [4] => best-standausstattung [5] => best-standausstattung [6] => best-standausstattung [7] => best-standausstattung [8] => best-standausstattung [9] => best-standausstattung [10] => best-standausstattung [11] => best-standausstattung )

War dieser Artikel hilfreich?
Nach oben scrollen