Wordpress Ajax发布请求-将变量发送到php

时间:2018-11-27 15:39:50

标签: php jquery ajax wordpress

所以我正在制作我的第一个WP插件,我真的迷路了。我首先以与在wordpress中使用ajax相同的方式使用了ajax,但是后来我意识到wordpress具有自己的嵌入式ajax,现在我正在尝试了解其工作原理。我阅读了法典中的文档,包括有关插件中的ajax的文档,但我仍然不了解一些内容。据说此代码应写在页面的页脚中,因此,如果我将其用作代码模板,则在制作插件时应将其放在哪个文件中?

<?php
add_action( 'admin_footer', 'my_action_javascript' ); // Write our JS below here

function my_action_javascript() { ?>
    <script type="text/javascript" >
    jQuery(document).ready(function($) {

        var data = {
            'action': 'my_action',
            'whatever': 1234
        };

        // since 2.8 ajaxurl is always defined in the admin header and points to admin-ajax.php
        jQuery.post(ajaxurl, data, function(response) {
            alert('Got this from the server: ' + response);
        });
    });

也有这段代码可以处理ajax请求,我可以看到它将一些数据作为变量。

<?php 

add_action( 'wp_ajax_my_action', 'my_action' );

function my_action() {
    global $wpdb; // this is how you get access to the database

    $whatever = intval( $_POST['whatever'] );

    $whatever += 10;

        echo $whatever;

    wp_die(); // this is required to terminate immediately and return a proper response
}

我必须发出的发布请求返回一个脚本作为响应。考虑到我已经使用ajax获得了该脚本,该如何将其保存到数据库中。

0 个答案:

没有答案