Todo partio con la idea de que las actualizaciones de Twitter fueran posteadas de alguna manera en WordPress, no con un Widget lateral, ni tampoco con algun Javascript que muestra las ultima actualizaciones, mas bien con un mensaje en el mismo blog, pero con un formato distintos, que denotara que era de Twitter exclusivamente.
Por lo que la idea principal es sincronizarlos, que actuen como buienos amigos, camaradas… algo asi como el Google Wave de los pobres.
Aqui podran ver, paso a paso, que herramientas necesitan y como puedan hacerlo ustedes mismos.
Dividire esto en 3 Partes
- Parte 1
Objetivo: Publicar las entradas de Twitter en WordPress
- Parte 2
Objetivo: Darle un formato distintos a las entradas desde Twitter
- Parte 3
Objetivo: Evitar Duplicacion de publicaciones cuando se utiliza el Twitter del propio sitio
¿Que herramientas necesitas?
Obviamente un WordPress instalado en tu propio servidor y los siguientes plugins
- FeedWordpress: Rescata un RSS (o Atom) e inserta mensajes en tu WordPress
- Twitpress: el plugin mas simple que podrás encontrar para enviar tus mensajes a Twitter
Otra herramienta, que es OPCIONAL es
Otra cosa fundamental es conocimiento sobre funciones de PHP, saber que es the_loop() y conocer bien tu WordPress, ya que modificaremos archivos de Twitpress y tambien el Theme de nuestro sitio.
Pasos a seguir – Parte 1
Primero, instalamos FeedWordpress y Twitpress, configurandolos adecuadamente y probamos que funcione bien.
Segundo, agregamos este Feed a Feewordpress, para que se publique en el sitio (ya sea de Yahoo Pipes o directamente de Twitter)

OPCION 1: En Yahoo! Pipes creamos un Clon de Twitter WordPress Pipe, cambiando la configuracion de la casilla del lado superior derecho

Una vez que cambiamos la configuracion, guardamos las modificaciones y presionamos Run Pipe… en esa nueva pagina, obtenemos el RSS de nuestro Pìpe recien creado

OPCION 2: Usamos el Feed de el Twitter que deaseamos salga en nuestro blog, por ejemplo puedes usar tu propio Twitter pesonal.

Tercero, ahora metemos las manos en la masa por lo que necesitamos editar nuestro archivo del plugin Twitpress, esto lo puedes hacer directamente en WordPress con la opcion Editr de la categoria Plugin, luego sleccionas el , tendra la forma mas menos asi…
http://*****/wp-admin/plugin-editor.php
Sol opor seguridad, cambie el nombre y direccion del Plugin, con la finalidad de que si se actualiza, no tengamos conflictos con nuestro cambio. (Pero siempre recuerden que si usar algun plugin den credito al crerador original). Deben buscar la siguiente funcion (que modificaremos)
function twitpress_publish( $postID )
La funcion original es asi…
//Publishes a tweet given only the postID
function twitpress_publish( $postID ){
//get the post
$post = get_post( $postID );
//Now redundant check to make sure the post has been published
if ( $post->post_status == "publish" ){
$message = twitpress_get_message( $postID );
twitpress_postMessage( get_option( 'twitpress_uid' ), get_option( 'twitpress_password' ), $message );
}
}
Y lo cambiamos por lo siguiente
//Publishes a tweet given only the postID
function twitpress_publish( $postID ){
//get the post
$post = get_post( $postID );
//Now redundant check to make sure the post has been published
if ( $post->post_status == "publish" ){
$message = twitpress_get_message( $postID );
if(strstr($post->guid,"tag:twitter.com") != TRUE)
{
twitpress_postMessage( get_option( 'twitpress_uid' ), get_option( 'twitpress_password' ),$message );
}
}
}
¿Que significa este cambio?
FeedWordpress usa el campo guid de la entrada para poner la informacion del mensaje original, osea de donde viene, por lo que si este mensaje viene de FeedWordpress, mas exactamente de un feed de twitter.com, no se posteara nuevamente en Twitter.
Parte 1 – LISTO
Eso es, nada mas… muy simple y corto (a pesar de lo complejo que pueda parece).
Lo que no puedes hacer (por ahora)
Yo, en general, siempre creo una cuenta de twitter con el nombre del sitio, para asi con Twitpress mantener informadas a las personas que siguen el blog, pero con este procedimiento no podemos usar la cuenta de twitter como la cuenta de la pagina, porque tendremos una duplicacion en los mensajes de twitter (no, no es porque haremos explotar nuestro servidor y Twitter)
Una breve explicacion de lo que pasaria si es mal implementado:
- Creamos un mensaje en el blog
- Twitpress lo envia a Twitter
- El feed de Twitter tendra un nuevo mensaje
- Se actualizara una entrada en el blog desde el feed con FeedWordpress
- Twitpress NO lo enviara a twitter, ya que viene de nuestro feed (por nuestras modificaciones)
- El mundo no se acabara el 2012, pero nuestro blog tendra un mensaje de twitter con un enlace a nuestra entrada recien creada (no muy elegante)
Una alternativa es que en Yahoo! Pipes, con la funcion Exclude, creemos alguna sentencia logica que impida que el mensaje nos llegue, por ejemplo el formato de nuestro mensaje es:
[titulo] [premalink] #post
Entonces, los mensajes que tengan #post no llegaran a nuestro feed de Feedwordpress y asi no tendremos problemas. En este preciso momento estoy en proceso de implementar esto, por lo que podras ver que Beta.KyL.cl tiene mensajes que aparecen en WordPress, pero no estan duplicados.
Tampoco he visto que se puede hacer con Wp-O-Matic, ya que no puedo instalarlo. Pero pronto saldra una nueva version y espero ponerle mis manotas destructoras encima.