Отображать форму гравитации на основе идентификатора вариации WooCommerce

Есть ли способ загружать формы Gravity каждый раз, когда пользователь меняет опцию в моем WooCommerce переменный продукт dropdown?

Форма гравитации будет зависеть от вариации id WooCommerce,
Я могу вытащить и отобразить идентификатор вариации на странице своего продукта. Проблема в том, что я не знаю, как загрузить форму через AJAX.

// Это мой JS

jQuery(document).ready(function($){
$( document ).on( "found_variation.first", function ( e, v ) {

//console.log("inside JS "+ v.variation_id );
var varid = v.variation_id;
var ajaxurl = object.ajaxurl;
var data = {
action: 'my_action',
var_id : varid,
};
$.post(ajaxurl, data, function(response) {

$(('div.woocommerce-variation-add-to-cart')).html(response);
class="selected-variation-id">'+response+'</div>');



});

} );
});

Это мой functions.php

wp_register_script( 'my-fffjquery-script', get_template_directory_uri() . '/js/my-fffjquery-script.js', array( 'jquery' ), '1.0.0', true );

wp_localize_script( 'my-fffjquery-script', 'object', array( 'ajaxurl' => admin_url( 'admin-ajax.php' ) ) );
wp_enqueue_script( 'my-fffjquery-script');


add_action( 'wp_ajax_my_action', 'my_action_callback' );
add_action( 'wp_ajax_nopriv_my_action', 'my_action_callback' );

function my_action_callback(){
$passedvariationid = $_POST['var_id'];
global $form_id;
echo $passedvariationid; // will be 'response' in ajax
$form_id = '9';
gravity_form( $form_id,true, false, false, false, true );

die();

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]