当前位置: 首页 > 面试题库 >

在ajax中从wordpress调用PHP函数?

戴凯歌
2023-03-14
问题内容

reset.php文件:

 <?php 
    add_action('admin_init','popup_template_reset_options');

    function popup_template_reset_options() 
        {
        delete_option('popup_template_on');
        delete_option('popup_template_close');
        delete_option('popup_template_escape');
        delete_option('popup_template_external');
        delete_option('popup_template_home_page');
        delete_option('popup_template_all_pages');
        delete_option('popup_template_template');
        delete_option('popup_cookies_display_after_like');
        add_option('popup_cookies_display_after_like','365');
        //add_option('popup_template_on','1');
        add_option('popup_template_close','1');
        add_option('popup_template_escape','1');
        add_option('popup_template_external','1');
        add_option('popup_template_force_timer','2');
        add_option('popup_template_home_page','1');
        add_option('popup_template_all_pages','1');
        add_option('popup_template_template','2');

    }
    ?>

脚本Ajax:

<script type="text/javascript">
    $(document).ready(function() {
        $('#reset_general').click(function()
        {
            $('#result1').css("display", "block");
            jQuery('#result1').animate({'opacity': '1'});

        });
    });
    function resetgeneral() {
        $.ajax({type: 'POST', url: '<?php echo WP_PLUGIN_URL; ?>/fantasticpopuptemplate/inc/reset.php', success: function(response) {

                //$('#fff').find('.form_result').html(response);
                $('#result1').css("display", "none");
                $('#resets1').css("display", "block");
                $('#resets1').html("Settings Resets");
                $('#resets1').fadeOut(2500, "linear");
            }});

        return false;
    }

</script>
<form onsubmit="return resetgeneral();" id="form_general_reset" class="form-1">
    <input type="submit" value="Reset" id="reset_general" name="reset" class="button-secondary"/>
    <input name="action" type="hidden" value="reset" />

</form>

嗨,我尝试在ajax中调用php
reset函数,但是当我进行谷歌搜索时,我知道没有直接调用php函数的可能性,因此我将该特定函数放在单独的php文件中并调用该php文件,我不确定我该怎么做阿贾克斯我尝试了上面的代码,但没有任何反应。出现设置重设消息。我该怎么做任何帮助都将非常有用。在使用ajax概念之前,我尝试过使用issetphp中的函数,但是每次只有我跳进ajax时,页面加载才会每次。


问题答案:

有一种依靠admin_ajax.php在WordPress插件中实现AJAX的标准方法。通过将功能分配给AJAX操作,该文件名具有误导性,因为它也可以在前端使用。

在WordPress Codex上有一个很好的描述:

http://codex.wordpress.org/AJAX_in_Plugins

需要注意的一件事:您的AJAX处理程序函数将始终必须以die()命令终止,以避免WordPress产生额外的“ 0”输出。



 类似资料:
  • 问题内容: 我想知道是否可以在ajax调用中使用诸如query_post()之类的函数? 假设我正在调用文件_inc / ajax.php 我想笨拙地使用wordpress函数,但是我不知道为什么。有人可以帮我吗? 非常感谢 :) 问题答案: WordPress提供了一个Ajax网址,您应该将其与完整的Ajax API 一起使用。 您需要创建一个jQuery函数。 例: ajaxurl var始终

  • 问题内容: 我熟悉如何使ajax转到php页面并执行一系列操作,然后返回json数据。但是,可以调用驻留在给定页面中的特定函数吗? 基本上我想要的是减少项目中的文件数。因此,我可以将很多常用功能放在一页中,然后立即调用我想要的任何功能。 问题答案: 对于ajax请求 1.在您的网页中包含Jquery库。例如: 2.点击按钮调用功能 3.点击按钮,调用JavaScript创建函数。 在服务器端的te

  • 我正在尝试创建一个函数,允许我使用more

  • 问题内容: 这是我的jQuery代码: 在process.php页面中,我有多个功能。一种功能是sendmail()。 如何通过ajax调用此函数?我将代码编写为: 但是什么也没发生。 问题答案: 与通话传递一些到。 在php页面中,

  • 问题内容: 我的ajax调用输出始终显示0,因为输出不知道为什么 在我有这段代码 我的ajax调用是在javascript中 我没有使用插件就在wordpress中进行ajax调用,但是没有得到我正在传递的内容,即使输出$ abc仍然显示0。 问题答案: 在后端,WordPress本身定义了全局ajaxurl变量。 该变量不是由WP在前端创建的。这意味着,如果要在前端使用AJAX调用,则必须自己定

  • 问题内容: 我正在使用jQuery的网页上工作。我有一个Ajax调用,它从服务器获取数据并更新div。在该数据内部有一个jQuery函数,但是在将数据加载到页面中之后未调用该函数。我已经在页面中包含了正确的js文件。 这是从Ajax调用返回并放入div的内容: 将html插入页面后,如何使返回的javascript运行? (我将Rails与jRails插件结合使用) 问题答案: 如果要对具有htm