This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
/** | |
* Prevent products being purchased from archive | |
* @return Boolean | |
*/ | |
function pewc_filter_is_purchasable( $is_purchasable, $product ) { | |
if( is_archive() ) { | |
return false; | |
} | |
return $is_purchasable; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/** | |
* How to get the product associated with a WooCommerce subscription | |
*/ | |
function ct_checkout_subscription_created( $subscription, $order, $recurring_cart ) { | |
$id = $subscription->get_id(); // You can use this to set meta in the subscription | |
// Get the products in the order | |
$items = $order->get_items(); | |
foreach( $items as $item ) { | |
$product = $item->get_product(); | |
$product_id = $product->get_id(); |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
function my_spaced_filter_amenities_icons( $icons ) { | |
$icons['spaced_cctv'] = array( | |
'id' => 'spaced_cctv', | |
'icon' => 'icon-cctv', | |
'label' => __( 'CCTV', 'spaced' ) | |
); | |
return $icons; | |
} | |
add_filter( 'spaced_filter_amenities_icons', 'my_spaced_filter_amenities_icons' ); |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
/** | |
* Add a fee when the user checks out with PayPal | |
*/ | |
function wcfad_apply_payment_gateway_fee() { | |
$payment_method = WC()->session->get( 'chosen_payment_method' ); | |
// Only apply the fee if the payment gateway is PayPal | |
// Note that you might need to check this slug, depending on the PayPal gateway you're using | |
if( $payment_method == 'ppec_paypal' ) { | |
$label = __( 'PayPal fee', 'wcfad' ); |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
function prefix_update_existing_cart_item_meta() { | |
$cart = WC()->cart->cart_contents; | |
foreach( $cart as $cart_item_id=>$cart_item ) { | |
$cart_item['new_meta_data'] = 'Your stuff goes here'; | |
WC()->cart->cart_contents[$cart_item_id] = $cart_item; | |
} | |
WC()->cart->set_session(); | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
/** | |
* This will hide widgets | |
* @param array $instance The current widget instance's settings. | |
* @param WP_Widget $this The current widget instance. | |
* @param array $args An array of default widget arguments. | |
*/ | |
function wcmo_filter_widget_display_callback( $settings, $widget, $args ) { | |
$can_access = false; // You need to set your conditions here | |
if( $can_access || in_array( $widget->name, $whitelist ) ) { |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
/** | |
* All credit to Henrik Jacobsen for this: https://bitbucket.org/snippets/henjak/4eBAqR/product-extras-for-woocommerce-add | |
* | |
* Add countries as options to a selectbox. | |
* | |
* When creating the selectbox in admin set "countrylist" as the first option and | |
* this code will insert all the countries. | |
* | |
* @uses product-extras-for-woocommerce/inc/functions-single-product.php/pewc_filter_item_start_list |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
// Add PDFs to list of permitted mime types | |
function my_prefix_pewc_get_permitted_mimes( $permitted_mimes ) { | |
// Add PDF to the list of permitted mime types | |
$permitted_mimes['pdf'] = "application/pdf"; | |
// Remove a mime type - uncomment the line below if you wish to prevent JPGs from being uploaded | |
// unset( $permitted_mimes['jpg|jpeg|jpe'] ); | |
return $permitted_mimes; | |
} | |
add_filter( 'pewc_permitted_mimes', 'my_prefix_pewc_get_permitted_mimes' ); |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
/** | |
* Add a text field to each cart item | |
*/ | |
function prefix_after_cart_item_name( $cart_item, $cart_item_key ) { | |
$notes = isset( $cart_item['notes'] ) ? $cart_item['notes'] : ''; | |
printf( | |
'<div><textarea class="%s" id="cart_notes_%s" data-cart-id="%s">%s</textarea></div>', | |
'prefix-cart-notes', | |
$cart_item_key, |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
(function($){ | |
$(document).ready(function(){ | |
$('.prefix-cart-notes').on('change keyup paste',function(){ | |
$('.cart_totals').block({ | |
message: null, | |
overlayCSS: { | |
background: '#fff', | |
opacity: 0.6 | |
} | |
}); |