Mostrar visitas de Categoría en WordPress

elvisdrago Seguir

Gamma
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
20 Jul 2012
Mensajes
242
Encontre por la red este codigo que sirve para mostrar las visitas de un post, pero llevo dias tratando de adaptarlo para categorias a ver si alguien me hecha una mano:

Con este código puedes mostrar el número de veces que ha sido visto un artículo. Solo debes hacer lo siguiente:

Este código en el archivo functions.php:

PHP:
function getPostViews($postID){
$count_key = 'post_views_count';
$count = get_post_meta($postID, $count_key, true);
if($count==''){
delete_post_meta($postID, $count_key);
add_post_meta($postID, $count_key, '0');
return "0 View";
}
return $count.' Views';
}
function setPostViews($postID) {
$count_key = 'post_views_count';
$count = get_post_meta($postID, $count_key, true);
if($count==''){
$count = 0;
delete_post_meta($postID, $count_key);
add_post_meta($postID, $count_key, '0');
}else{
$count++;
update_post_meta($postID, $count_key, $count);
}
}

Luego esto en el archivo single.php, en cualquier parte dentro del Loop de WordPress:
PHP:
<?php setPostViews(get_the_ID()); ?>

Y luego el siguiente código en el archivo single.php o en donde quieras mostrar el número de visitas del artículo:

PHP:
<?php echo getPostViews(get_the_ID()); ?>

Mi meta es modificarlo de forma que sirva para mostrar el numero de visitas de una categoria
 

Cicklow

Admin
Dseda
Verificado
Verificación en dos pasos activada
Verificado por Whatsapp
¡Ha verificado su Paypal!
Suscripción a IA
Desde
30 May 2011
Mensajes
1.101
Pues veamos... el problema aca que los post meta son para los POST... se podria usar para las categorias, pero por ejemplo un post esta en varias categorias y hay que ver cuales son (el id de cada una) y sumarle o mostrar los resultados... sino editar el category.php del theme y manejarlas desde ahi... unas visitas a un post es facil, el user visita un post... pero las categorias es distinto, un user la ve desde un post, desde una busqueda, desde el visor de categoriar etc..

para obtener el id de la categoria: $category_id = get_cat_ID('Category Name');
dsp se puede hacer una tabla especial para esto o adaptarlo y rogar que funciona con los meta post
 

elvisdrago

Gamma
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
20 Jul 2012
Mensajes
242
[MENTION=9679]cicklow[/MENTION] Mis categorias las muestro en archive.php, basicamente el punto es contar las visitas que recina el archive.php(osea la categoria), y lugego mostrar el numero de visitas. trate de hacer en una tabla aparte con wpbd pero no manejo mucho wordpres entonces no llego a nada. pero del metodo que sea el punto es contar las visitas xD
 

Javieer

Gamma
Programador
Desde
2 Ago 2013
Mensajes
161
Por favor, ten en cuenta 📝 que si deseas hacer un trato 🤝 con este usuario, está baneado 🔒.
El código que proporcionas no se puede editar para contabilizar visitas por categoría debido a que add_post_meta agrega datos solo para 1 post, en tu caso lo que puedes hacer es instalar el plugin wp-category-meta y después leer y actualizar las visitas con funciones que proporciona dicho plugin, add_terms_meta() y update_terms_meta(), el código quedaría así:

PHP:
<?php
function CatViews()
{
$count_key = 'cat_views_count';
$categorias = get_the_category();
$id_categoria = $categories[0]->cat_ID;
if($id_categoria=="")
	{
	$id_categoria = get_cat_ID(single_cat_title("", false));
	}

$count = get_terms_meta($id_categoria, $count_key, true);
if($count=='')
    { 
    delete_terms_meta($id_categoria, $count_key);
    add_terms_meta($id_categoria, $count_key, '0'); 
    $count = 0;
    }
else
    {
    $count++;
    update_terms_meta($id_categoria, $count_key, $count);
    }
    
if($count == 1)
    {
    // singular
    return '1 Visita'; 
    }
//plural
return $count.' Visitas'; 
}  
?>

Donde quieras mostrar las visitas por categoría

PHP:
<?php echo CatViews(); ?>

NOTA: Cada vez que se muestre el numero de visitas se sumara 1 visita
 
Última edición:
Arriba