通过admin-ajax.PHP调用Wordpress中的PHP函数时,不会更新元信息,但会收到一条成功消息

通过admin-ajax.PHP调用Wordpress中的PHP函数时,不会更新元信息,但会收到一条成功消息,php,ajax,wordpress,admin-ajax,Php,Ajax,Wordpress,Admin Ajax,post_views_count()用于使用ajax请求更新当前post页面的视图计数,以便它仍然可以工作 调用时,它是已成功调用的输出,但在调试时添加了我的视图计数。任何帮助都将不胜感激 仅供参考:这是一个名为“课程”的自定义帖子类型 functions.php中的代码 add_action('wp_ajax_nopriv_post_views_count', 'post_views_count'); add_action('wp_ajax_post_views_count', 'post_

post_views_count()用于使用ajax请求更新当前post页面的视图计数,以便它仍然可以工作

调用时,它是已成功调用的输出,但在调试时添加了我的视图计数。任何帮助都将不胜感激

仅供参考:这是一个名为“课程”的自定义帖子类型


functions.php中的代码

add_action('wp_ajax_nopriv_post_views_count', 'post_views_count');
add_action('wp_ajax_post_views_count', 'post_views_count');

function post_views_count() {
    global $wpdb;
    $countKey = 'post_views_count';
    $count = get_post_meta($postID, $countKey, true);
    if($count==''){
        $count = 0;
        delete_post_meta($postID, $countKey);
        add_post_meta($postID, $countKey, '0');
    }else{
        $count++;
        update_post_meta($postID, $countKey, $count);
    }
    exit();
}
single-courses.php中的代码

<script>
        jQuery(document).ready(function() {
            var ajaxurl = '<?php echo admin_url('admin-ajax.php'); ?>';
            jQuery.ajax({
            type: "POST",
            cache: false,
            url: ajaxurl,
            data: {
                action: 'post_views_count',
                postID: '<?php echo get_the_ID(); ?>'
            },
            success: function (output) {
                console.log("<?php echo get_post_meta(get_the_ID(), 'post_views_count', true); ?>");
            }

            }); 
        });
    </script>

jQuery(文档).ready(函数(){
var ajaxurl='';
jQuery.ajax({
类型:“POST”,
cache:false,
url:ajaxurl,
数据:{
操作:“post_views_count”,
发布ID:'
},
成功:功能(输出){
控制台日志(“”);
}
}); 
});
已解决

发送了POSID数据请求,现在可以在静态缓存页面时跟踪post视图计数

$postID = $_REQUEST['postID'];
解决了

发送了POSID数据请求,现在可以在静态缓存页面时跟踪post视图计数

$postID = $_REQUEST['postID'];

您似乎忘记在代码中声明
$postID
。您似乎忘记在代码中声明
$postID