Skip to content

Instantly share code, notes, and snippets.

View mitchellkrogza's full-sized avatar
🤓
Busy ... Always busy

Mitchell Krog mitchellkrogza

🤓
Busy ... Always busy
View GitHub Profile
@mitchellkrogza
mitchellkrogza / fix-woocommerce-max-variations-frontend
Created June 7, 2021 10:58
Fix WooCommerce Limit on Variations (Front End)
/**
* Fix for issue where too many variations causes the front end to not pre-load
* all variations and rely on AJAX.
*/
function custom_wc_ajax_variation_threshold( $qty, $product )
{
return 400;
}
add_filter( 'woocommerce_ajax_variation_threshold', 'custom_wc_ajax_variation_threshold', 10, 2 );
@mitchellkrogza
mitchellkrogza / woocommerce-add-product-brand
Created June 7, 2021 10:56
Add Product Brand to All Products (WooCommerce)
// Add Brand for Products.
// Only use if you sell one brand of item ie. Your own brand
add_filter( 'rank_math/snippet/rich_snippet_product_entity', function( $entity ) {
$entity['brand'] = 'My Brand' ;
return $entity;
});
@mitchellkrogza
mitchellkrogza / woocommerce-ninja-product-enquiry-form
Created June 7, 2021 10:54
Replace Woocommerce Product Enquiry Form with Ninja Form
// Include a Ninja Forms form in a product page. Different forms for simple and variable products.
add_filter( 'the_content', 'ninja_product_enquiry_form' );
function ninja_product_enquiry_form( $content ) {
if ( class_exists( 'woocommerce' ) && is_product() && is_main_query() ) {
global $product;
if ( 'simple' == $product->get_type() ) {
ob_start();
Ninja_Forms()->display( 3 ); // Equivalent to shortcode: [ninja_form id=3]
return $content . ob_get_clean();
}
@mitchellkrogza
mitchellkrogza / woo-change-add-to-cart-button-text
Created June 6, 2021 14:09
Woocommerce Change Add to Cart Button Text
add_filter( 'woocommerce_product_single_add_to_cart_text', 'woocommerce_custom_single_add_to_cart_text' );
function woocommerce_custom_single_add_to_cart_text() {
return __( 'Buy Now', 'woocommerce' );
}
@mitchellkrogza
mitchellkrogza / woo-increase-variations
Last active June 22, 2021 12:44
Woocommerce Increase Variations per Page (Admin)
// NOTE: Setting this too high (even 50) can cause freezing when saving variations
// A 400 Bad Request can be registered on wpadmin-ajax.php when too high
add_filter( 'woocommerce_admin_meta_boxes_variations_per_page', 'woo_increase_variations_per_page' );
function woo_increase_variations_per_page() {
return 50;
}
@mitchellkrogza
mitchellkrogza / woo-notify-cancellation
Created June 6, 2021 14:07
WooCommerce - Notify Customer of Order Cancellation
function wc_cancelled_order_add_customer_email( $recipient, $order ){
return $recipient . ',' . $order->billing_email;
}
add_filter( 'woocommerce_email_recipient_cancelled_order', 'wc_cancelled_order_add_customer_email', 10, 2 );
@mitchellkrogza
mitchellkrogza / disable-wp-image-scaling
Created June 6, 2021 14:06
Disable Wordpress Image Scaling
add_filter( 'big_image_size_threshold', '__return_false' );
@mitchellkrogza
mitchellkrogza / disable-wp-lazy-load
Created June 6, 2021 14:05
Disable Wordpress Lazy Load
add_filter( 'wp_lazy_loading_enabled', '__return_false' );
@mitchellkrogza
mitchellkrogza / disable-wp-sitemaps
Created June 6, 2021 14:04
Disable Wordpress 5 sitemaps
add_filter( 'wp_sitemaps_enabled', '__return_false' );
@mitchellkrogza
mitchellkrogza / bypass-woocommerce-logout-confirmation
Last active June 6, 2021 14:05
Bypass Woocommerce Logout Confirmation
function flatsome_bypass_logout_confirmation() {
global $wp;
if ( isset( $wp->query_vars['customer-logout'] ) ) {
wp_redirect( str_replace( '&', '&', wp_logout_url( wc_get_page_permalink( 'myaccount' ) ) ) );
exit;
}
}
add_action( 'template_redirect', 'flatsome_bypass_logout_confirmation' );