Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

110
Views
Contar la vista de publicación de WordPress al hacer clic con AJAX

¿Cómo puedo contar las vistas de mis publicaciones de WordPress cuando hago clic en un botón usando AJAX?

Actualmente está contando la vista de publicación cada vez que actualizo la página, quiero llamar a esa función con ajax.

Verifique el código que estoy usando actualmente para mostrar el recuento de vistas de publicaciones

Dentro de las funciones.php

 if ( ! function_exists( 'count_views' ) ) : // Get the value of view function count_views($postID) { $count_key = 'wpb_post_views_count'; $count = get_post_meta($postID, $count_key, true); if($count ==''){ $count = 1; delete_post_meta($postID, $count_key); add_post_meta($postID, $count_key, '1'); } else { $count++; update_post_meta($postID, $count_key, $count); } } endif;

Luego, en single.php, he llamado a la función count_views con get_the_ID();

 <?php count_views(get_the_ID()); ?>

Para recuperar el recuento de vistas que he usado:

 <li> <i class="fa fa-eye"></i> <?php if (get_post_meta(get_the_ID(), 'wpb_post_views_count', true) == '') { echo '0'; } else { echo get_post_meta(get_the_ID(), 'wpb_post_views_count', true); }; ?> </li>

¿Cómo puedo llamar a la función count_views(get_the_ID()) usando la llamada javascript Ajax?

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

Deberá agregar acciones a su archivo functions.php para WordPress. Luego puede designar funciones de devolución de llamada que devuelvan los datos que está buscando. Código PHP a continuación:

 // You add two actions here, so it can be accessed from outside the WP CMS add_action( 'wp_ajax_project_get_post_count', 'project_get_post_count_callback' ); add_action( 'wp_ajax_nopriv_project_get_post_count', 'project_get_post_count_callback' ); function project_get_post_content_callback() { if(!empty($_POST['ID'])){ $postID == $_POST['ID']; $count_key = 'wpb_post_views_count'; $count = get_post_meta($postID, $count_key, true); $response['views'] = $count; if($response['views'] ==''){ $response['views'] = 0; } wp_send_json( $response ); } }

Una vez que tenga esa configuración, en javascript necesita hacer una publicación AJAX, pasando el nombre de la acción usando el atributo de acción en POST . Esto a continuación lo llevará principalmente allí. Deberá formatearlo correctamente para poder obtener sus datos. Este ejemplo también está en jQuery , Vanilla JS será diferente. Código JS a continuación:

 $.ajax({ type: 'POST', url: ajaxfullurl, data: { 'action': 'project_get_post_count', 'ID':<YOURIDHERE> } });

La última pieza que necesitará es la URL de AJAX ( ajaxfullurl ). WordPress proporciona una forma de conseguirlo. Este es el código PHP que necesitará para extraer la URL para las llamadas AJAX en su sitio web de WordPress.

 echo admin_url('admin-ajax.php');
about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!