ユーザーが WordPress Web サイトに送信するフォームがあり、そのデータを使用して投稿を作成します。フォームの送信は AJAX で行われるため、ページはリロードされません。Javascript がその特定の投稿により多くのデータを POST できるように、ページに戻す必要がある投稿 ID があります。
その投稿を編集し続けることができるように、投稿 ID (単なる整数) をページに戻すにはどうすればよいですか?
ユーザーが WordPress Web サイトに送信するフォームがあり、そのデータを使用して投稿を作成します。フォームの送信は AJAX で行われるため、ページはリロードされません。Javascript がその特定の投稿により多くのデータを POST できるように、ページに戻す必要がある投稿 ID があります。
その投稿を編集し続けることができるように、投稿 ID (単なる整数) をページに戻すにはどうすればよいですか?
AJAX を使用する必要があります。PHP はサーバー側 (ページの読み込み前に解析) であり、Javascript はクライアント側 (ページの読み込み後/読み込み中に解析) であるため、PHP コードがページの読み込みなしで直接変数を Javascript に渡すことは不可能です。
私の提案: 「pid.php」など、投稿 ID を取得するスクリプトを作成します。次に、AJAX を使用してそのページのコンテンツを取得しparseInt
、Javascript を使用して整数形式に変換します。
編集: オースティンが賢明に提案したように、json を使用することもできます。
ajax リクエストが成功したら、投稿 ID をグローバル変数に保存して、後で使用できるようにします。
たとえば、 クライアント側:
var post_id = 0; //use the post id later to edit the same post.
$.ajax({
url: 'somefile.php',
success: function(data) {
alert('success, post id is: ' + data.id);
post_id = data.id;
}
});
サーバ側:
$post_id = 123;
echo json_encode(array('id' => $post_id));