Skip to content

Instantly share code, notes, and snippets.

View contemplate's full-sized avatar

Ted Barnett contemplate

View GitHub Profile
@contemplate
contemplate / profile_autofill_expiration.php
Last active May 1, 2016 06:14
PMPro - Custom JS to autofill the expiration date when a PMPro level is chosen on the edit user page by admin
/*---------------------------------
Autofill Expiration on Admin Level Change
-----------------------------------*/
function profile_autofill_expiration()
{
global $wpdb;
$sqlQuery = "SELECT * FROM $wpdb->pmpro_membership_levels ";
$sqlQuery .= "ORDER BY id ASC";
$levels = $wpdb->get_results($sqlQuery, OBJECT);
@contemplate
contemplate / functions.php
Last active November 14, 2023 12:59
WooCommerce - Allow guest checkout for certain products when Guest checkout is Disabled globally
/*--------------------------------------
Woocommerce - Allow Guest Checkout on Certain products
----------------------------------------*/
// Display Guest Checkout Field
add_action( 'woocommerce_product_options_general_product_data', 'woo_add_custom_general_fields' );
function woo_add_custom_general_fields() {
global $woocommerce, $post;
echo '<div class="options_group">';
@contemplate
contemplate / functions.php
Created July 14, 2018 04:58
WPBakery Page Builder ACF EXTRA Grid Item
/**************************************
* VC ACF GRID ITEM W/ RELATIONSHIP
***************************************/
add_filter( 'vc_grid_item_shortcodes', 'vc_grid_item_shortcode_acf_extra' );
function vc_grid_item_shortcode_acf_extra( $shortcodes ) {
$groups = function_exists( 'acf_get_field_groups' ) ? acf_get_field_groups() : apply_filters( 'acf/get_field_groups', array() );
$groups_param_values = $fields_params = array();
foreach ( $groups as $group ) {
$id = isset( $group['id'] ) ? 'id' : ( isset( $group['ID'] ) ? 'ID' : 'id' );
$groups_param_values[ $group['title'] ] = $group[ $id ];
@contemplate
contemplate / functions.php
Created October 8, 2019 01:17
Bloom Email Opt-in Custom CSS Help Guide added in options panel
// Bloom Custom CSS Help
add_action( 'et_bloom_after_main_options', 'add_bloom_custom_options', 10, 2 );
function add_bloom_custom_options( $option, $current_option_value ) {
if ( is_admin() && $option[name] == 'custom_css' ) {
$optin_id = $_POST['reset_optin_id'];
printf( '<li class="et_dashboard_auto_height">
<h3 style="margin-top: 15px">CSS HELP</h3>
<div style="margin-bottom:15px;"><strong>Target This Optin:</strong><br>.et_bloom_%1$s.et_bloom_optin { ... css code here ... }</div>
<div style="margin-bottom:15px;"><strong>HIDE ON DESKTOP:</strong><br>@media screen and (min-width:981px) { .et_bloom_%1$s.et_bloom_optin {display:none !important;} }</div>
<div style="margin-bottom:15px;"><strong>HIDE ON MOBILE:</strong><br>@media screen and (max-width:981px) { .et_bloom_%1$s.et_bloom_optin {display:none !important;} }</div>
@contemplate
contemplate / footer.php
Created October 8, 2019 01:24
Bloom Email Optin move Below Post Opt-in into the post ( after 3rd paragraph )
@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 {
@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 / 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 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 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;