0) { $views = (int) get_post_meta($frontPage, '_cvolio_views', true); update_post_meta($frontPage, '_cvolio_views', $views + 1); } return; } $postId = get_queried_object_id(); if ($postId > 0) { $views = (int) get_post_meta($postId, '_cvolio_views', true); update_post_meta($postId, '_cvolio_views', $views + 1); } } add_action('template_redirect', 'cvolio_track_visit'); function cvolio_get_client_ip(): string { $keys = [ 'HTTP_X_FORWARDED_FOR', 'HTTP_CLIENT_IP', 'REMOTE_ADDR', ]; foreach ($keys as $key) { if (! empty($_SERVER[$key])) { $value = explode(',', (string) $_SERVER[$key]); return trim($value[0]); } } return '0.0.0.0'; } function cvolio_register_visits_dashboard_widget(): void { wp_add_dashboard_widget( 'cvolio_visits_widget', __('CVolio: Visitas', 'cvolio'), 'cvolio_render_visits_dashboard_widget' ); } add_action('wp_dashboard_setup', 'cvolio_register_visits_dashboard_widget'); function cvolio_render_visits_dashboard_widget(): void { $total = (int) get_option('cvolio_total_visits', 0); $frontPage = (int) get_option('page_on_front'); $frontViews = $frontPage > 0 ? (int) get_post_meta($frontPage, '_cvolio_views', true) : 0; ?>