要增强WordPress文章的浏览量统计并支持防止重复刷新不增加浏览量,您可以考虑以下方法:
WP Post Views Plus: 这个插件可以为每篇文章记录浏览量,并且可以配置为防止重复刷新增加浏览量。
Post Views Counter: 这个插件也可以记录浏览量并且可以设置为不计算重复访问。
WPPostViews: 这是另一个用于浏览量统计的插件,它可以根据需要防止重复增加浏览量。
安装并配置这些插件之一,可以轻松实现文章浏览量统计,并根据您的需求设置防止重复刷新。
function custom_track_post_views($post_id) {
if (!is_single()) return; // 仅在单篇文章页面执行
$user_ip = $_SERVER['REMOTE_ADDR'];
$key = 'post_views_count';
$post_id_ip_key = $post_id . '_' . $user_ip;
// 检查是否已经记录了此IP对此文章的访问
$views = get_post_meta($post_id, $key, true);
$views_ips = get_post_meta($post_id, $key . '_ips', true);
if ($views_ips && is_array($views_ips) && in_array($user_ip, $views_ips)) {
return; // 如果IP已经记录过,不增加浏览量
} else {
if (empty($views)) {
$views = 0;
}
$views;
update_post_meta($post_id, $key, $views);
// 记录IP以防止重复增加浏览量
$views_ips[] = $user_ip;
update_post_meta($post_id, $key . '_ips', $views_ips);
}
}
add_action('wp_head', 'track_post_views');
此代码片段将在文章页面的wp_head
钩子上执行,并记录每个访问者的IP地址,以防止重复增加浏览量。请确保在使用此代码之前备份您的主题文件,并谨慎操作。
无论您选择使用插件还是自定义功能,都应该帮助您增强WordPress文章浏览量统计并防止重复刷新增加浏览量。