我一直在为我的免费插件制作一个输出“捐赠”表单的类。“No thanks”解雇链接隐藏表单并运行AJAX调用以更新跟踪解雇的WP选项。
我在实际启动被调用的PHP函数时遇到了问题。我添加了“success”函数来输出一个echo,该echo是我添加到AJAX调用的PHP函数中的(通常,该函数没有输出,只有WP选项更新),但“data”始终为0,数据库中什么都没有发生。
我猜WP由于某种原因实际上无法使用该函数。该函数被声明为public,这实际上起到了作用。我不确定我所做的哪些修改会破坏它。
下面是我的jQuery AJAX调用的相关部分
// Create the AJAX data
ajax_call_data = {
\'action\': \'dismiss_ppd_dmgr\',
\'nonce\': $nonce
};
// Call the AJAX function to update the options
jQuery.ajax({
url: ajaxurl,
type: \'post\',
data: ajax_call_data,
success: function(data) { alert( data ) }
});
在这个类中,我有一个属性ajax\\u call,它是在类实例化时设置的,我正在向Wordpress添加这样的调用。我已经验证了$this->ajax\\u调用是否正确填充,并尝试对其进行硬编码,而不是使用变量。
add_action( \'wp_ajax_\' . $this->ajax_call , array( &$this , \'dismiss_form\' ) );
所以我想问题是,我如何调试它来找出为什么WP不能调用我的PHP类函数?关于为什么找不到/运行该函数,有什么想法吗?