ユーザーがクリックできる投稿内にボタンがあります。クリックすると、AJAX呼び出しが行われます。
私の質問は、私のPHP AJAXヘルパー関数(私のテーマのfunction.phpにあります)の中で、例えばリクエストが送信された投稿のIDをどのように取得できるかです。 。
マークアップからIDを取得してAJAX呼び出しで渡すことができますが、これは面倒です。
<article id="post-12">
<!-- article content -->
</article>
// JS
var postID = $("article").attr("id");
もっと良い方法はありますか?おそらくアクセス可能なある種のグローバル?
グローバルを宣言するには、 wp_localize_script()
を使用します。
例:
wp_localize_script( 'my-ajax-request', 'MyAjax', array( 'ajaxurl' => admin_url( 'admin-ajax.php' ) ) );
クエリ結果をそこに保存し、後でそれらにアクセスすることができます。
これがループ内にある場合は、the_ID()
またはget_the_ID()
を使用して値を渡すことができます。明示的に伝えない限り、どのようにしてヘルパー関数が投稿が何であるかを知ることができるかわかりません。