Next and Previous MLL Post

add_filter( ‘etch/dynamic_data/post’, function( $data, $post_id ) { $prev = get_previous_post(); $next = get_next_post(); $image_size = ‘medium’; $data[‘prev_post’] = $prev ? [ ‘title’ => html_entity_decode( get_the_title( $prev ), ENT_QUOTES, ‘UTF-8’ ), ‘permalink’ => get_permalink( $prev ), ‘thumbnail’ => get_the_post_thumbnail_url( $prev->ID, $image_size…Continue reading

[Papa Macros] Rename Default WooCommerce ‘Description’ Tab to ‘Ingredients’

add_filter( ‘woocommerce_product_description_heading’, ‘custom_change_description_heading_for_specific_categories’ ); function custom_change_description_heading_for_specific_categories( $heading ) { global $product; if ( ! is_product() || ! $product instanceof WC_Product ) { return $heading; } // Check if product has either ‘meals’ or ‘snacks’ category if ( has_term( [ ‘meals’,…Continue reading

Enable Background Image “fetchpriority” via Custom Data Attribute

add_action( ‘template_redirect’, ‘rd_preload_marked_theme_background_images’, 1 ); function rd_preload_marked_theme_background_images() { if ( is_admin() || wp_doing_ajax() || wp_is_json_request() ) { return; } if ( defined( ‘REST_REQUEST’ ) && REST_REQUEST ) { return; } if ( is_feed() || is_trackback() || is_robots() || is_embed() )…Continue reading

Missing /Stories SLUG

add_action(‘template_redirect’, function () { if (is_admin()) return; global $wp; $request_path = trim($wp->request, ‘/’); // Skip if already under /stories/ if (strpos($request_path, ‘stories/’) === 0) return; // Only run on 404s (old URLs) if (is_404()) { // Extract slug (last part…Continue reading

Guard Pay Diagnostic Tool

/** * ============================================================ * GUARDEDPAY PRO — Phase 1 Diagnostic (TEMPORARY) * ============================================================ * * PURPOSE: Detects child theme status and scans checkout output * for deprecated GuardedPay copy that needs removal. * * INSTALL: Add via Code Snippets plugin…Continue reading