Skip to content

Instantly share code, notes, and snippets.

@danielbitzer
danielbitzer / functions.php
Created January 10, 2017 04:41
[Refer A Friend] Dynamic email from name for referral invites, personalize with the advocate's name
<?php
add_filter('automatewoo/referrals/invite_email/mailer', 'my_filter_referrals_invite_email', 10, 2 );
/**
* @param AW_Mailer $mailer
* @param AW_Referrals_Referral_Invite_Email $invite
* @return AW_Mailer
*/
function my_filter_referrals_invite_email( $mailer, $invite ) {
@danielbitzer
danielbitzer / functions.php
Last active September 14, 2022 11:28
[Refer A Friend] Advocate rewards based on their user role and percentage of order
<?php
add_filter( 'automatewoo/referrals/reward_amount', 'my_automatewoo_referral_reward_amount', 10, 3 );
/**
* @param $reward_amount
* @param AW_Model_Referral_Advocate $advocate
* @param WC_Order $order
* @return mixed
*/
@danielbitzer
danielbitzer / functions.php
Last active September 14, 2022 11:27
AutomateWoo - Set which order to use for email previews
<?php
add_filter( 'automatewoo/preview_data_layer', 'my_filter_automatewoo_preview_data_layer' );
/**
* @param array $data
* @return array
*/
function my_filter_automatewoo_preview_data_layer( $data ) {
@danielbitzer
danielbitzer / functions.php
Created March 10, 2017 01:53
AutomateWoo - Hide the admin menu from store managers
<?php
add_action( 'admin_menu', 'my_maybe_remove_automatewoo_from_admin_menu', 5 );
function my_maybe_remove_automatewoo_from_admin_menu() {
if ( ! current_user_can( 'administrator' ) ) {
remove_action( 'admin_menu', [ 'AutomateWoo\Admin', 'admin_menu' ] );
}
}
@danielbitzer
danielbitzer / custom-email-sender.php
Last active September 14, 2022 11:27
AutomateWoo - Customize your email sender name
<?php
// change the from name
add_filter( 'automatewoo/mailer/from_name', function( $from_name ) {
return 'My Custom From Name';
});
// change the from address
add_filter( 'automatewoo/mailer/from_address', function( $from_email ) {
return 'email@example.org';
@danielbitzer
danielbitzer / functions.php
Last active September 14, 2022 11:26
[AutomateWoo] Custom variable - Order delivery date for Tyche Softwares plugin
<?php
add_filter( 'automatewoo/variables', 'my_automatewoo_variables' );
/**
* @param $variables array
* @return array
*/
function my_automatewoo_variables( $variables ) {
$variables['order']['delivery_date'] = dirname(__FILE__) . '/variable-order-delivery-date.php';
@danielbitzer
danielbitzer / functions.php
Created June 26, 2017 19:04
Refer A Friend - Allow referral discounts to be used with other offers
<?php
add_filter('automatewoo/referrals/coupon_data', 'my_automatewoo_referrals_coupon_data' );
/**
* @param array $coupon_data
* @return array
*/
function my_automatewoo_referrals_coupon_data( $coupon_data ) {
$coupon_data['individual_use'] = false;
@danielbitzer
danielbitzer / functions.php
Last active September 14, 2022 11:24
AutomateWoo Refer A Friend - Change referral coupon type to sign up fee percentage discount
<?php
add_filter('automatewoo/referrals/coupon_data', 'my_automatewoo_referrals_custom_coupon_data' );
/**
* @param array $coupon_data
* @return array
*/
function my_automatewoo_referrals_custom_coupon_data( $coupon_data ) {
$coupon_data['discount_type'] = 'sign_up_fee_percent';
@danielbitzer
danielbitzer / functions.php
Last active September 14, 2022 11:24
AutomateWoo - Adding email CSS with a filter. More info at https://automatewoo.com/docs/email/customizing-your-email-design/
<?php
add_filter( 'automatewoo/mailer/styles', 'my_automatewoo_custom_email_styles' );
/**
* @param string $css
* @return string
*/
function my_automatewoo_custom_email_styles( $css ) {
@danielbitzer
danielbitzer / functions.php
Last active September 14, 2022 11:23
AutomateWoo - Add WP Shortcode support to workflow emails
<?php
/*
* Add shortcode support to to AutomateWoo email content.
*
* NOTE: Using shortcode's in emails is discouraged because most shortcodes don’t output valid HTML for email.
* Also many shortcodes simply don't work outside of the frontend template context.
*/
add_filter( 'automatewoo_email_content', 'shortcode_unautop', 11 );
add_filter( 'automatewoo_email_content', 'do_shortcode', 11 );