Great things are on the horizon
Something big is brewing! Our store is in the works and will be launching soon!
// RHF MAP Price Guard โ standalone, priority 999 (runs last) // Hides sale prices below MAP on all pages. Adds CSS + JS backup layer.// 1) Price HTML filter โ runs at priority 999 to override all other filters add_filter( 'woocommerce_get_price_html', function( $price_html, $product ) { if ( ! $product || ! $product->is_on_sale() ) return $price_html; $sale = (float) $product->get_sale_price(); $map = (float) get_post_meta( $product->get_id(), 'map_price', true ); if ( $map <= 0 || $sale >= $map ) return $price_html; return ''; }, 999, 2 );// 2) CSS + JS safety net โ hides any visible del/ins inside .price // for products whose computed sale is below map_price add_action( 'wp_footer', function() { global $post; $ids = []; // On single product page if ( is_singular('product') && $post ) { $p = wc_get_product( $post->ID ); $sale = $p ? (float) $p->get_sale_price() : 0; $map = $p ? (float) get_post_meta( $p->get_id(), 'map_price', true ) : 0; if ( $map > 0 && $sale > 0 && $sale < $map ) $ids[] = $p->get_id(); } if ( empty( $ids ) ) return; $sel = implode(',', array_map(fn($id) => '.product-'.$id.' .price', $ids)); ?> 0 && get_post_meta($shop_id, '_elementor_edit_mode', true)) { delete_post_meta($shop_id, '_elementor_edit_mode'); } $s = get_option('astra-settings', array()); if (($s['woocommerce-sidebar-layout'] ?? '') !== 'left-sidebar') { $s['woocommerce-sidebar-layout'] = 'left-sidebar'; update_option('astra-settings', $s); } }, 1);// Step 2: Filter Astra layout at runtime add_filter('astra_page_layout', function($layout) { if (function_exists('is_shop') && is_shop()) { return 'left-sidebar'; } return $layout; }, 999);
Skip to contentSomething big is brewing! Our store is in the works and will be launching soon!