کد نمایش تعداد بازدید سایت برای وردپرس
اگر میخواهید بدون نصب افزونه و فقط با قرار دادن کد، بتوانید تعداد بازدیدهای سایت خود را به کاربران نشان بدهید، از کد نمایش تعداد بازدید سایت استفاده کنید. این کد که با PHP و HTML طراحی شده این امکان را به شما میدهد.
این کد که برای وردپرس طراحی شده است به خوبی این کار را انجام داده و نیاز به نصب هیچ گونه افزونه آمارگیر برای سایت ندارید و میتوانید بدون اینکه سایت را سنگین کنید فقط از طریق قرار دادن کد، به هدف خود برسید.
ابتدا به داخل هاست رفته و از داخل بخش Public_html به داخل پوشه قالب بروید. سپس فایل functions.php را پیدا کرده و گزینه ویرایش را بزنید. حالا کد زیر را در انتهای آن اضافه کرده و ذخیره کنید:
// شمارش بازدید امروز
function count_today_visits() {
if (is_admin()) return;
$today = date(‘Y-m-d’);
$key = ‘visits_’ . $today;
$visits = get_option($key, 0);
update_option($key, $visits + 1);
}
add_action(‘wp’, ‘count_today_visits’);
// پاسخ AJAX برای دریافت بازدید امروز
function ajax_get_today_visits() {
$today = date(‘Y-m-d’);
$key = ‘visits_’ . $today;
$visits = get_option($key, 0);
wp_send_json([
‘visits’ => $visits
]);
}
add_action(‘wp_ajax_get_today_visits’, ‘ajax_get_today_visits’);
add_action(‘wp_ajax_nopriv_get_today_visits’, ‘ajax_get_today_visits’);
function get_last_month_visits_total() {
global $wpdb;
$last_month = wp_date(‘Y-m’, strtotime(‘first day of last month’));
$total = 0;
$options = $wpdb->get_results(
“SELECT option_name, option_value
FROM {$wpdb->options}
WHERE option_name LIKE ‘visits_%'”
);
foreach ($options as $opt) {
// استخراج تاریخ از نام option
if (preg_match(‘/visits_(\d{4})[-_](\d{2})[-_](\d{2})/’, $opt->option_name, $m)) {
$ym = $m[1] . ‘-‘ . $m[2];
if ($ym === $last_month) {
$total += (int) $opt->option_value;
}
}
}
return $total;
}
حالا هر کجای سایت که میخواهید بازدید امروز را نمایش بدهید مثلا در فوتر، کافیست کد زیر را به صورت کد HTML قرار بدهید:
<div id=”today-visits”>
بازدید امروز تا این لحظه: <strong id=”today-number”>0</strong>
</div>
<script>
document.addEventListener(“DOMContentLoaded”, function () {
fetch(“/wp-admin/admin-ajax.php?action=get_today_visits”)
.then(r => r.json())
.then(d => {
document.getElementById(“today-number”).textContent = d.visits;
});
fetch(“/wp-admin/admin-ajax.php?action=get_last_month_visits”)
.then(r => r.json())
.then(d => {
if (d.success) {
document.getElementById(“last-month-number”).textContent = d.data.total;
} else {
document.getElementById(“last-month-number”).textContent = ‘0’;
}
})
.catch(err => {
console.error(‘Last month error:’, err);
});
});
</script>