我已经自己解决了我的问题。首先我在我的主题中定义了 ajaxurl,function.php
如下所示:
<?php
add_action('wp_head','pluginname_ajaxurl');
function pluginname_ajaxurl() {
?>
<script type="text/javascript">
var ajaxurl = '<?php echo admin_url('admin-ajax.php'); ?>';
</script>
<? }
?>
我把下面的脚本放在我的插件文件的顶部。
<script type="text/javascript">
function setVal()
{
var val = jQuery('#custom_text_message').val()
var data = {
action: 'my_action',
value: val,
};
jQuery.post(ajaxurl, data, function(response) {
alert('Got this from the server: ' + response);
});
}
jQuery(document).ready(function() {
jQuery('#custom_text_message').blur(function() {setVal()});
//setTimeout('setVal()', 3000);
});
</script>
这是我试图在我的插件中做的领域。
<textarea name="custom_text_message" id="custom_text_message"></textarea>
然后我把我调用我的脚本的动作放在function.php
.
add_action('wp_ajax_my_action', 'my_action_session');
function my_action_session() {
global $wpdb; // this is how you get access to the database
session_start();
$_SESSION['cus_msg'] = $_POST['value'];
die(); // this is required to return a proper result
}
然后将我的会话值调用到我的函数中。这就是我所做的一切并为我工作,我希望这对其他人有所帮助。
注意:wp_ajax_your_action
如果您需要在前端使用该操作,则
该操作适用于管理员,操作将是wp_ajax_nopriv_your_action
.