Skip to content

Instantly share code, notes, and snippets.

View contemplate's full-sized avatar

Ted Barnett contemplate

View GitHub Profile
@contemplate
contemplate / functions.php
Created December 2, 2020 20:57
Smart Coupons By URL Cartflows integration
/*-- Smart Coupons By URL Integration --*/
add_action( 'cartflows_checkout_after_configure_cart', 'cartflows_smart_coupons_apply_coupon_from_url', 10, 1 );
function cartflows_smart_coupons_apply_coupon_from_url( $checkout_id ) {
$cart = ( is_object( WC() ) && isset( WC()->cart ) ) ? WC()->cart : null;
parse_str( wp_unslash( $_SERVER['QUERY_STRING'] ), $coupon_args ); // phpcs:ignore
$coupon_args = wc_clean( $coupon_args );
// If Coupons are in URL
@contemplate
contemplate / functions.php
Created November 17, 2020 13:53
PMPro show member expiration date
/*-- Member Expiration Date Shortcode -----------------*/
//[pmpro_expiration_date]
function pmpro_expiration_date_shortcode( $atts ) {
//make sure PMPro is active
if(!function_exists('pmpro_getMembershipLevelForUser'))
return;
//get attributes
$a = shortcode_atts( array(
'user' => '',
@contemplate
contemplate / functions.php
Created November 13, 2020 06:18
PMPro show content before expiration shortcode [pmpro_before_expiration]
/*-- Show Content Before Expiration Shortcode -----------------*/
function pmpro_before_expiration_shortcode( $atts, $content=null, $code="" ) {
//make sure PMPro is active
if(!function_exists('pmpro_getMembershipLevelForUser'))
return;
//get attributes
$a = shortcode_atts( array(
'user' => '',
'days' => '15',
@contemplate
contemplate / functions.php
Last active March 24, 2023 15:42
Shortcode for WooCommerce Subscriptions User Action Buttons
// Shortcode For User Subscription Actions
function cd_wcs_user_action_button( $atts ) {
// Attributes
$atts = shortcode_atts(
array(
'user' => '',
'status' => 'active',
'button' => 'id',
'title' => '',
@contemplate
contemplate / shortcodes.php
Created April 17, 2020 21:51
Kleo K Elements kleo_search_form shortcode fix
add_shortcode( 'kleo_search_form', 'kleo_search_form_func' );
function kleo_search_form_func( $atts, $content = null ) {
$form_style = $type = $placeholder = $context = $el_class = '';
extract( shortcode_atts( array(
'form_style' => 'default',
'type' => 'both',
'context' => '',
'placeholder' => '',
'el_class' => ''
@contemplate
contemplate / functions.php
Last active April 26, 2023 12:47
AffiliateWP: Disable New Referral Email for Affiliates with Store Credit Disabled
/*-- Disable New Referral Email for PAID Affiliates -----------*/
function disable_new_refferal_email( $return, $referral ) {
// Check to see if AffiliateWP is active.
if ( ! function_exists( 'affiliate_wp' ) ) {
return;
}
$affiliate_id = $referral->affiliate_id;
@contemplate
contemplate / functions.php
Created December 15, 2019 23:57
MyBookTable: use book image as post thumbnail
/**
* MyBookTable: use book image as post thumbnail
*/
//Find Book Image ID
add_filter( 'get_post_metadata', 'mbt_use_book_image_as_thumbnail', 10, 4 );
function mbt_use_book_image_as_thumbnail( $null, $object_id, $meta_key, $single ) {
if ( '_thumbnail_id' !== $meta_key ) {
return $null;
}
@contemplate
contemplate / functions.php
Last active March 3, 2021 03:24
WP Ultimate Post Grid filter to add secondary orderby date when custom meta key is selected as primary order
// ORDER GRID BY DATE SECOND IF META KEY ORDER IS ENABLED
//add_filter( 'wpupg_get_posts_args', 'wpupg_order_by_date_second', 10, 2);
add_filter( 'wpupg_query_post_args', 'wpupg_order_by_date_second', 10, 2);
function wpupg_order_by_date_second( $args, $page ){
if( $args['orderby'] == 'meta_value_num' ){
$args['orderby'] = 'meta_value_num date';
}
return $args;
}
@contemplate
contemplate / functions.php
Created October 23, 2019 03:52
WooCommerce Purchased Total Shortcode
//WooCommerce Purchased Total Shortcode
add_shortcode( 'cd-purchased-total', 'cd_shortcode_purchased_totals' );
function cd_shortcode_purchased_totals( $atts ){
STATIC $cd_shortcode_count;
$cd_shortcode_count++;
$total_value = 0;
$_atts = shortcode_atts( array(
'product_ids' => '',
@contemplate
contemplate / MailChimp.php
Created October 16, 2019 02:41
Bloom better Mailchimp integration for groups and custom field updates
<?php
/**
* Wrapper for MailChimp's API.
*
* @since 1.1.0
*
* @package ET\Core\API\Email
*/
class ET_Core_API_Email_MailChimp extends ET_Core_API_Email_Provider {