Número de retweets en WordPress sin plugin

Twitter es un muy buen sitio para conseguir visitas a nuestra página. Publicas una entrada y esta se muestra en tu cuenta de Twitter. Otros usuarios hacen te hacen retweets o, mucho mejor, nombran una noticia tuya. Podemos llevar la cuenta de las veces que un post nuestro ha sido mencionado en Twitter y mostrarlo para que los visitantes a nuestro blog sepan cuán popular es.

Lo primero que necesitamos es registrarnos en BackType para conseguir una clave API en la sección de Developers (arriba a la derecha). Tras esto nos ponemos con el código que insertaremos, por ejemplo, en nuestro archivo single.php de nuestro theme de WordPress.

<?php
$link = get_permalink($post->ID);
$key = 'APIkey';
$url = "http://api.backtype.com/tweetcount.xml?q=$link&key=$key";
$request = new WP_Http;
$result = $request->request( $url );
?>

Metemos nuestra API key y listo, solo faltará mostrarlo con el siguiente código:

<?php echo $result['body']; ?>

También podéis meter la primera parte del código en el archivo functions.php y hacer la llamada desde el archivo donde queréis mostrar el número de retweets.

Mostrar contenido solo a usuarios registrados en BuddyPress

Llevo un tiempo trasteando con BuddyPress y me doy cuenta de que casi no hable de lo que fui aprendiendo (casi siempre de otras paginas).

Si tambien trabajais sobre BuddyPress igual os interesa la manera de mostrar informacion solo a los usuarios registrados o, al contrario, a los no registrados. O incluso cambiar el mensaje segun el tipo de usuario.

Para mostrar un mensaje, codigo o lo que quieras a un usuario registrado:

<?php if (is_user_logged_in() ) {  ?>
aqui lo que quieras mostrar
<?php } ?>

Si lo quieres para usuarios no registrados solo hay que insertar una exclamacion:

<?php if (!is_user_logged_in() ) {  ?>
aqui lo que quieras mostrar
<?php } ?>

Podemos mostrar mensajes a ambos de esta forma:

<?php if ( is_user_logged_in() ) : ?>
aqui lo que quieras mostrar a los usuarios registrados
<?php else : ?>
y aqui para los usuarios no registrados
<?php endif; ?>

Si quereis mas informacion en WPMU hicieron un post donde muestran mas posibilidades dependiendo de los roles del usuario.

Mostrar Twitter en los comentarios


Simpre quise socializar un poco mas el blog. Esta vez implemente una forma para que los usuarios que comenten dejen su Twitter. Esto lo consegui de la siguiente manera:
Lo primero que tenemos que hacer es descargar el plugin Extra Comment Fields y modificarlo para que no nos de problemas con las ultimas versiones de WordPress.
Tras instalarlo nos dirigimos a sus opciones (Opciones -> Extra Comment Fields) y crear un nuevo campo llamado “twitter”, por ejemplo.
Ahora en nuestro formulario para los comentarios (generalmente esta en el comments.php) añadimos un nuevo campo:

<p><input type="text" name="twitter" id="twitter" value="<?php echo $extra_twitter?>"size="22" tabindex="4" />
<label for="twitter">Twitter ID <small>(Tu nombre en Twitter)</small></label></p>

Con esto lo que haremos sera que lo que introduzcan ahi los usuarios se guarde gracias al plugin que instalamos antes.
Lo siguiente sera integrar el codigo donde queramos mostrar la direccion de Twitter del comentarista, por ejemplo debajo del nombre:

<?php if ($comment->extra_twitter) {
$extra_twitter = preg_replace("/^@/", "", $comment->extra_twitter);
$extra_twitter = htmlentities($extra_twitter); ?>
<a href="http://twitter.com/<?=$extra_twitter ?>">@<?=$extra_twitter?></a>
<?php } // extra_twitter ?>

Esto lo podeis personalizar añadiendole una imagen como hice yo.
Tengo que agradecer la ayuda que recibi en ForoWordPress para poder implementar esto.

Plugin| Extra Comment Fields

Como instalar BuddyPress en WordPress Simple

Seguro que habeis oido hablar de BuddyPress, un plugin para WordPress MU que te permite crear una sencilla red social, permitiendo a tus usuarios registrados crearse su propio blog (esto tambien lo pueden hacer en WordPress MU), tener mensajeria privada, crear amistades, grupos, foros de debate, etc.

Tambien habreis oido que en la proxima version de WordPress, la 3.0, WordPress y WordPress MU se unificaran, con lo que se podra utilizar BuddyPress en una instalacion normal de WordPress (creo que nunca dije WordPress tantas veces).

Pues con la nueva version de BuddyPress 1.2, que esta todavia en desarrollo, ya podemos probar esta novedad. Lo unico que tenemos que hacer sera descargarnos la version de desarrollo de BuddyPress desde el trunk e instalarlo como si fuera un plugin normal.

Tras esto ya veremos un panel extra en nuestra administracion del blog para la configuracion de BuddyPress, componentes, foros, etc.

Para seleccionar el theme de BuddyPress tendremos que ir a Apariencia y si queremos modificarlo ir a la carpeta bp-themes que se encuentra dentro de la carpeta buddypress que subimos a nuestro directorio de plugins.

Yo la estoy probando y funciona perfectamente y toqueteando algunas cosas podemos conseguir algo grande con muy poca cosa.

Via| Ayuda WordPress

Solucionar problemas con Extra Comment Fields en WordPress

Para la ultima modificacion de este blog utilice un plulgin llamado Extra Comment Fields que te permite añadir un campo extra para que lo rellenen tus comentaristas y que puedes utilizar para otras funciones (pronto os dire para que y como lo utilice yo).

El problema es que con las ultimas versiones de WordPress (creo que a partir de la 2.8) te salian unos errores al querer entrar en el panel de administracion de comentarios, parecidos a estos:

Si a vosotros tambien os pasa aqui teneis la solucion, solo tendreis que modificar dos lineas del archivo del plugin:

Buscamos en la linea 176:

$comments = (($overrideComments)?($overrideComments):($comments));

y la comentamos (ponemos /* texto que queremos comentar */)

En la linea 203 aparece la funcion:

function ecf_getComments($comments, $post_id) {

de esta funcion sustituimos:

$result = $wpdb->get_results(”SELECT xc.comment_ID, “.ecf_qryStr($fields).”
FROM wp_comments c, wp_comments_extra xc
WHERE c.comment_post_ID = ‘$post_id’ AND c.comment_ID = xc.comment_ID”);

por:

$wpdb->xc = $wpdb->prefix . ‘comments_extra’;
$wpdb->c = $wpdb->prefix . ‘comments’;

$sql = “SELECT xc.comment_ID, “.ecf_qryStr($fields).” FROM $wpdb->c c, $wpdb->xc xc WHERE c.comment_approved = 1 AND c.comment_post_ID = ‘$post_id’ AND c.comment_ID = xc.comment_ID”;

$result = $wpdb->get_results($sql);

Solo teneis que modificar las comillas y ya esta. No nos volveran a salir esos errores.

Actualizado

Os dejo el archivo ya corregido, para que os sea mas facil:
[file]http://www.blumbablog.com/wp-content/descargas/extra-comment-fields.rar[/file]