// Add FAQ Fields to Product Admin Page add_action('woocommerce_product_options_general_product_data', function() { // Get existing FAQ data $faqs = get_post_meta(get_the_ID(), '_product_faqs', true); if (!$faqs) $faqs = []; ?>
}); // Save FAQs to Product Meta add_action('save_post', 'save_product_faqs'); function save_product_faqs($post_id) { // Only process when saving a product if (get_post_type($post_id) !== 'product') return; // Check if FAQ questions are set if (isset($_POST['faq_question'])) { $faqs = []; foreach ($_POST['faq_question'] as $i => $q) { if (!empty($q) && !empty($_POST['faq_answer'][$i])) { // Sanitize and save FAQ $faqs[] = [ 'question' => sanitize_text_field($q), 'answer' => wp_kses_post($_POST['faq_answer'][$i]) ]; } } // Save the FAQ data to product meta update_post_meta($post_id, '_product_faqs', $faqs); } } // Display FAQs on Product Details Page add_action('woocommerce_after_single_product', function() { global $post; $faqs = get_post_meta($post->ID, '_product_faqs', true); if (!empty($faqs)) { echo '