Tutoriales de WordPress de Confianza, cuando más los necesitas.
Guía para Principiantes de WordPress
Copa WPB
25 Millones+
Sitios web que usan nuestros plugins
16+
Años de experiencia en WordPress
3000+
Tutoriales de WordPress de expertos

Cómo mostrar el recuento de seguidores de Twitter y más en WordPress

Anteriormente escribimos sobre un código que te permite mostrar el recuento de seguidores de Twitter, que fue aportado por Rarst. En este artículo, compartiremos un código más avanzado y elegante que te permite mostrar el recuento de seguidores de Twitter en WordPress. Una vez más, este script también fue aportado por Rarst.

Características

Esta función no se limita al recuento de seguidores. Puede obtener cualquier valor no anidado devuelto por el método API de Twitter users/show.

Tiene dos niveles de caché:

  • los valores consultados se almacenan como un array en la base de datos, usando las opciones de WP, durante $interval segundos;
  • las respuestas de la API se almacenan en memoria para que puedas consultar cualquier número de campos, sin generar múltiples solicitudes a la API.

Esto debería ser seguro de usar para múltiples valores y múltiples usuarios al mismo tiempo, sin preocuparse por agotar el límite de la API.

Tutorial

Primero abre el archivo functions.php de tu tema y agrega el siguiente código:

    function rarst_twitter_user( $username, $field, $display = false ) {
    $interval = 3600;
    $cache = get_option('rarst_twitter_user');
    $url = 'http://api.twitter.com/1/users/show.json?screen_name='.urlencode($username);

    if ( false == $cache )
    $cache = array();

    // if first time request add placeholder and force update
    if ( !isset( $cache[$username][$field] ) ) {
    $cache[$username][$field] = NULL;
    $cache[$username]['lastcheck'] = 0;
    }

    // if outdated
    if( $cache[$username]['lastcheck'] < (time()-$interval) ) {

    // holds decoded JSON data in memory
    static $memorycache;

    if ( isset($memorycache[$username]) ) {
    $data = $memorycache[$username];
    }
    else {
    $result = wp_remote_retrieve_body(wp_remote_request($url));
    $data = json_decode( $result );
    if ( is_object($data) )
    $memorycache[$username] = $data;
    }

    if ( is_object($data) ) {
    // update all fields, known to be requested
    foreach ($cache[$username] as $key => $value)
    if( isset($data->$key) )
    $cache[$username][$key] = $data->$key;

    $cache[$username]['lastcheck'] = time();
    }
    else {
    $cache[$username]['lastcheck'] = time()+60;
    }

    update_option( 'rarst_twitter_user', $cache );
    }

    if ( false != $display )
    echo $cache[$username][$field];
    return $cache[$username][$field];
    }

Uso

Una vez que hayas pegado la función, ahora puedes usar el código en cualquier archivo de plantilla de WordPress que desees. Simplemente pega el siguiente código:

echo rarst_twitter_user('wpbeginner', 'name').' has '.
rarst_twitter_user('wpbeginner', 'followers_count').' followers after '.
rarst_twitter_user('wpbeginner', 'statuses_count').' updates.';

El código anterior mostrará algo como esto:

WPBeginner tiene 5846 seguidores después de 1300 actualizaciones.

Fuente: Rarst

Descargo de responsabilidad: Nuestro contenido es compatible con el lector. Esto significa que si haces clic en algunos de nuestros enlaces, podemos ganar una comisión. Consulta cómo se financia WPBeginner, por qué es importante y cómo puedes apoyarnos. Aquí está nuestro proceso editorial.

El Kit de herramientas definitivo para WordPress

Obtén acceso GRATUITO a nuestro kit de herramientas: ¡una colección de productos y recursos relacionados con WordPress que todo profesional debería tener!

Interacciones del lector

10 CommentsLeave a Reply

  1. Alguien que me explique dónde pongo mi nombre de usuario de Twitter, por favor. Es que de verdad no veo dónde... Y tampoco consigo que funcione... Pase lo que pase... Simplemente no me da el nombre de usuario, ni siquiera dejándolo completamente básico como está ahora mismo, no obtengo ninguna respuesta en cuanto al nombre de usuario... solo muestra: "tiene seguidores después de las actualizaciones"...
     
    Eso es todo... nada más...

  2. Glad you found it useful. :) Old snippet still works but it got kinda outdated and spread around a lot – it was getting hard to answer questions and correct outdated parts all the time.

    Este es un poco más voluminoso, pero tiene una funcionalidad mucho más extendida para mostrar más datos y para diferentes nombres de usuario al mismo tiempo.

    También tengo la intención de mantenerlo de manera más adecuada, por lo que los comentarios y sugerencias son bienvenidos en su página en mi blog.

Deja una respuesta

Gracias por elegir dejar un comentario. Ten en cuenta que todos los comentarios son moderados de acuerdo con nuestra política de comentarios, y tu dirección de correo electrónico NO será publicada. Por favor, NO uses palabras clave en el campo del nombre. Tengamos una conversación personal y significativa.