¿Estás buscando una forma de rastrear las vistas de publicaciones y páginas por ID de usuario, fecha y hora? Si bien probablemente exista un plugin para esto, hemos creado un fragmento de código rápido que puedes usar para rastrear las vistas de publicaciones y páginas por ID de usuario, fecha y hora en WordPress.
Primero, agrega wps_trackViewDates(); dentro del bucle de tu archivo de plantilla. Una vez agregado, el fragmento rastreará el ID del usuario que vio una publicación individual junto con la fecha y hora en que se vio.
También puedes agregar una opción de expiración que comparará la hora de expiración con la hora actual y devolverá verdadero mientras la hora de expiración sea menor. Esto es bastante útil si quisieras mostrar un mensaje personalizado según cuándo vio cada usuario la publicación. Puedes ver ‘strtotime’ en este caso con más de 20 minutos para la expiración. Consulta ‘strtotime’ para más opciones.
Puedes agregar un pequeño fragmento al final llamado wps_getViewCounts(); que simplemente devolverá el número de vistas únicas de publicaciones.
Instrucciones:
Todo lo que tiene que hacer es agregar este código al archivo single.php de su tema:
function wps_trackViewDates(){
global $post, $current_user;
$data_key = '_utime';
$utime = time();
$data = get_post_meta($post->ID, $data_key, true);
if(is_array($data)){
if ( !in_array( $current_user->ID, $data ) ) {
$data[$utime] = $current_user->ID;
$data = array_unique($data, SORT_NUMERIC );
update_post_meta($post->ID, $data_key, $data, false);
}else{
$saved_time = array_search($current_user->ID, $data);
$expiry_time = strtotime("+20 minutes",$saved_time); // expires time
if($expiry_time < $utime) return true;
}
}else{
$data = array();
$data[$utime] = $current_user->ID;
add_post_meta($post->ID, $data_key, $data, false);
}
}
function wps_getViewCounts(){
global $post, $current_user;
$data_key = '_utime';
$data = get_post_meta($post->ID, $data_key, true);
if(is_array($data)){ echo count($data); }
}
Para verificar si la caducidad es verdadera, puedes agregar el siguiente código en tu archivo single.php.
/* USAGE */
if(wps_trackViewDates() == true){
echo 'message when true';
}else{
echo 'message when false';
}
Nota: Si es la primera vez que agregas fragmentos de código en WordPress, consulta nuestra guía sobre cómo copiar / pegar fragmentos de código correctamente en WordPress, para que no rompas accidentalmente tu sitio.
Si te gustó este fragmento de código, considera revisar nuestros otros artículos en el sitio como: 25 mejores herramientas para que los freelancers escalen un negocio y cómo guardar datos parciales de formularios en WordPress.
Con esta función, ¿cómo le muestras al administrador la última publicación visitada por cada usuario?
Gracias
Es probable que la función necesite ser editada un poco para hacer esto. Dicho esto, quizás quieras revisar: https://www.isitwp.com/install-google-analytics-wordpress-site/
[…] Fragmento cortesía de WP Snip […]
Con esta función, ¿cómo le muestras al administrador la última publicación visitada por cada usuario?
Gracias