これは範囲の問題かもしれませんが、すべての基底をカバーしたいと思います。私はAjaxハンドラ関数に値、距離を送信しています。ここでJSは次のとおりです。WPプラグインで複数の関数でAJAX経由で送信されたデータを使用する
$.ajax({
type: 'POST',
url: url,
data: {
'action':'example_ajax_request',
'distance' : distance
},
success:function(response) {
// This outputs the result of the ajax request
console.log(response);
},
error: function(errorThrown){
console.log(errorThrown);
}
});
私はバックエンドで、距離変数へのアクセス権を持っている:
add_action('wp_ajax_example_ajax_request', 'example_ajax_request');
add_action('wp_ajax_nopriv_example_ajax_request', 'example_ajax_request');
// Dynamic field population
function example_ajax_request() {
// The $_REQUEST contains all the data sent via ajax
if (isset($_POST)) {
$distance = $_POST['distance'];
// echo $distance;
}
die();
}
$distance
は値が含まれていると私は正常にそれをエコーすることができます。しかし、私は重力の形にフックする別の関数でこの値を使う必要があります。重力の値を動的に設定する必要があります(gform_field_value_$parameter_name
フックを使用)。問題は、Ajax関数の外で$_POST['distance']
値にアクセスする方法を理解できず、$_POST['distance']
が利用可能になる前にGravity Formsフックが発生するということです(私の推測)。
WPのハンドラ関数の外にある$_POST
オブジェクトを送信したAjaxにアクセスする方法はありますか?私はこれをすべて間違って見ていますか? Gravity Formsフィールドに動的に値を設定するために、その値をどのように使用できるかに関する提案はありますか?
ありがとうございます。ここで