function.php
私は自分で問題を解決しました。最初に、以下のようにテーマにajaxurlを定義しました。
<?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
。