記録

WordPressを実践勉強中、ajaxについてうにゃ。


WordPressでajaxを動かそうするとき、WordPressのルールに
則って動かさないと動かないらしい。
なので、このような記述を書かないといけない。
まず、非同期処理の送信先に、admin-ajax.phpというファイルを指定。
そこへPOSTかGETしないといけない。そしてデータとして
アクションさせるファンクション名を記述して
上げないといけないらしい。
こんな感じになる。

$( '#submit' ).on( 'click', function(){
    $.ajax({
        type: 'POST',
        url: <?=admin_url('admin-ajax.php')?>,
        data: {
            'action' : 'hoge_f',
        },
        dataType: "json",
        success: function( obj){
            alert( obj );
        }
    });
    return false;
});

次にWPテーマのファンクションファイルに下記を追加記述。

function hoge_f(){
echo json_encode($_POST);
    die();
}
add_action( 'wp_ajax_hoge_f', 'hoge_f' );
add_action( 'wp_ajax_nopriv_hoge_f', 'hoge_f' );

ここでミソなのが、die();という部分、これを除けると0という文字も出力されてしまう。
ちなみにwp_ajaxがログイン時の振る舞い、wp_ajax_noprivがログアウト(=訪問者)時の
振る舞いだそうだ。
この2つの勘所だけ覚えとけばWordPressで非同期処理が
行えるのではないだろうか、もっと詳しく知りたい場合、admin-ajax.phpの中身を
見たらよいのだろうけど、にわかWordPress職人さんはコレだけ
覚えとけば良さそうだと。
 

片言の日本語より。前のページ

映画、ブレードランナー2049を観てきましたよ。次のページ

関連記事

  1. 記録

    GCPでメール代行するならmailgunだと思います。

    GCPでメール代行するならmailgunだと思います。GCPではポ…

  2. 記録

    又吉直樹さんは才能あるよ。

    劇場という映画を見て「あぁ」自分は何をやっているのかとたまに思うこと…

  3. 記録

    映画、メイズ・ランナー2:砂漠の迷宮を観てきましので感想なんかを #映画レビューメイズ・ランナー

    メイズ・ランナー2:砂漠の迷宮を観てきましので感想なんかを残しときま…

  4. 記録

    サブスクリプション略してサブスク。

    サブスクリプションとは定期サービスの事です。例えば音楽の定期サ…

  5. 記録

    ベンチャー企業はFLATな職場が多いわけ。

    ベンチャー企業はFLATな職場が多いわけ。答えは簡単でシガラミを作…

PAGE TOP