ID) && 'product' === get_post_type($post->ID)) { $prod = wc_get_product($post->ID); if ($prod instanceof WC_Product) { return $prod; } } // In editor mode (including AJAX render), try to set up a preview product if (class_exists('King_Addons\\Woo_Builder\\Context')) { $preview = Woo_Context::setup_preview_product(); if ($preview instanceof WC_Product) { return $preview; } } return null; } /** * Render placeholder when product context is missing. * * @return void */ protected function render_missing_product_notice(): void { $is_editor = false; if (class_exists('King_Addons\\Woo_Builder\\Context')) { $is_editor = Woo_Context::is_editor(); } $is_elementor_edit = false; if (class_exists('\Elementor\Plugin') && \Elementor\Plugin::$instance && isset(\Elementor\Plugin::$instance->editor)) { $is_elementor_edit = \Elementor\Plugin::$instance->editor->is_edit_mode(); } if (!$is_editor && !$is_elementor_edit) { return; } // Check if we're editing a Single Product template but just don't have any products if (class_exists('King_Addons\\Woo_Builder\\Context') && Woo_Context::is_editing_template_type('single_product')) { echo '