My Twitter – Clase PHP 5 para trabajar con el API de Twitter

Escrito el 24 de August del 2007 por artux.
Categoria: Desarrollo, Programacion, Recursos.

Continuando con mi adicción a Twitter, hace un par de semanas atrás me puse a escribir My Twitter, una clase en PHP 5 para trabajar con el API de Twitter. Aprovechando cada minuto libre y escribiendo en fracciones de no más de 5 minutos pude completar la clase que cubre todos los métodos disponibles por el API.

Sin dudas parte del éxito de Twitter se debe al excelente API que ofrece a los desarrolladores. Y si ya de por sí es bastante fácil interactuar con el API de Twitter, con My Twitter se vuelve mucho más simple aun.

My Twitter

Que Necesito para usar My Twitter?.

Para ejecutar My Twitter necesitas tener un servidor con PHP 5, con CURL y SimpleXML habilitados.

Ejemplos Básicos de Uso:

  • Mostrando tus updates (User Time Line) y mostrando los updates de la gente que sigues (Following Time Line).
<?php

require_once( './my_twitter.php' );

$twitter =  new MyTwitter('TwitterUser', 'TwitterPassword');

$status = $twitter->userTimeLine(); // User Time Line

$followstatus = $twitter->followingTimeLine(); // Following Time Line

$statuscount = count($status); //Obteniendo el número de resultados

$followcount = count($followstatus); //Total de Resultados

for ( $i=0; $i < $statuscount ; $i++ )
        {

        echo "<p>". $status[$i]['text'] ."</p>";

        }

for ( $i=0; $i < $followcount ; $i++ )
        {

        echo "<p>". $followstatus[$i]['text'] ."</p>";

        }

?> 
  • Actualizando el status en Twitter
<?php

require_once( './my_twitter.php' );

$twitter =  new MyTwitter('TwitterUser', 'TwitterPassword');

//Actualizando Status, simple no?
$twitter->updateStatus('My Twitter Clase PHP 5');

//Nota: 140 caracteres máximo

?> 
  • Enviando un Mensaje Directo a alguno de tus Contactos
<?php

require_once( './my_twitter.php' );

$twitter =  new MyTwitter('TwitterUser', 'TwitterPassword');

$twitter->newMessage('screen name o ID', 'mensaje');

//Nota: mensaje 140 caracteres máximo

?> 

Donde Descargo My Twitter?.

Podes descargar My Twitter desde su espacio en el sitio PHP Classes:
My Twitter (paquetes en .zip y tar.gz). Con el paquete esta adjunto un archivo con ejemplos de todos los métodos disponibles.

Un saludo grande y si no estoy por aca, ya saben, búsquenme en http://twitter.com/artux

39 comments.

Twitter This. WP Plugin Para Compartir Con Twitter

Escrito el 26 de July del 2007 por artux.
Categoria: Desarrollo, Programacion, Recursos, WP-Plugins.

Twitter This. mejor que compartir es compartir con Twitter

Con herramientas como Twitter Feed podemos hacer que nuestro Twitter se actualice de forma automática cuando escribimos alguna entrada nueva en nuestros blogs.

Twitter This

Pero que pasa cuando estamos en un blog que no es el nuestro y queremos compartir con nuestros followers (seguidores) un post de dicho blog que nos resultó interesante?. Es todo un trabajo, primero copiar la url; después entrar a algún sitio que nos ofrezca la posibilidad de acortar esa url, ejemplo tinyurl.com; después entrar a twitter pegar la url corta y escribir algo descriptivo para así por fin luego de una serie de varios pasos terminar actualizando nuestro status con el post que queríamos compartir.

Ahora con Twitter This el hecho de compartir se convierte en algo mucho más simple.

Twitter, WordPress, jQuery y abbrr.com = Twitter This

Twitter This es un plugin para WordPress que ofrece a los lectores que tengan cuanta en Twitter la posibilidad de enviar los post a este servicio simplificando la tarea. El funcionamiento es muy simple, bastante intuitivo, pueden probarlo aquí mismo haciendo click en el botón al final de este post. El plugin se encarga de enviar el Título y la URL (acortada con abbrr.com) del post que queremos compartir con solo llenar el formulario con nuestros datos de Twitter. Los datos en ningun momento quedan almacenados, son enviados directamente a Twitter.

Como Instalar Twitter This?

  • Lo primero es descargar Twitter This desde el siguiente enlace.
    Download Image Download: Twitter This v 1.0 Downloads: 4268 times
  • Una vez descargado es como siempre, descomprimimos el archivo twitter-this.zip y subimos el directorio completo /twitter-this al directorio de los plugins en WordPress ( /wp-content/plugins/).
  • Por último, activamos el plugin Twitter This en el panel de administración de nuestro WordPress y listo, fácil no?

Algunos aspectos Técnicos sobre Twitter This.

  • Twitter This usa jQuery en forma no conflictiva para evitar inconvenientes con plugins y/o Themes que usen otro tipo de framework javascript como puede ser Prototype.
  • Elegí abbrr.com para acortar las URL en ves de tinyurl porque abbrr funciona mucho mejor y además esta desarrollado por un argentino (Victor Bracco).
  • Twitter This fue probado en casi todas las versiones de WordPress (2.0; 2.1; 2.2) funcionando perfectamente en todas ellas.

Agradecimientos:

Quiero agradecer principalmente a Alex Payne (uno de los principales desarrolladores de Twitter) por su buena predisposición y a todos los que hacen que este humilde blog cresca día a día.

Saludos!

24 comments.

Twitter, moda o revolución?

Escrito el 15 de July del 2007 por artux.
Categoria: Desarrollo, Misceláneas, Personales, Tecnología.

Muchos dicen que Twitter es solo una moda pasajera; otros tantos afirman que llegó para quedarse. Lo cierto es que ultimamente todo lo que pasa en el mundo, y esto sin caer en la exageración, de alguna o de otra manera termina en Twitter o en alguno de sus clones (Jaiku, Pownce). Ya sea en forma de comentario alusivo o enlace referencial, todo llega a Twitter desde la voz de sus protagonistas y/o testigos.

El fenómeno Twitter, no solo trasciende la finalidad con la que sus creadores desarrollaron la aplicación (What are you doing? – Qué estás haciendo?), si no que además trasciende a la red misma, convirtiendo a Twitter en el centro neurálgico de la información mundial.

Acontecimientos políticos, ambientales, bélicos; gente a favor de Hugo Chavez que comenta la última medida de su presidente, gente en contra de Hugo Chavez que nos cuenta la otra cara de la misma medida; personas testigos del último golpe de la naturaleza contando lo que vivieron; alguien que dice que cae nieve en Buenos Aires; un periodista que deja el enlace de la tapa de su próxima revista; un programador que cuenta sobre su último desarrollo; otro que grita un gol de su selección en la Copa América. Fragmentos de información que vuelan de un lado a otro más rápido que la luz.

Twitter no solo esta cambiando la forma de fluir de la información sino que también esta cambiando la forma de relacionarnos, cambiando ese viejo dicho “Somos pocos y nos conocemos mucho”, por este otro “Somos muchos y nos estamos conociendo”.

Twitter, moda o revolución?. Creo que todos estamos de acuerdo con que Twitter es una moda, pero como muchas de las nuevas tecnologias, puede ser algo revolucionario si le damos un buen uso.

6 comments.

Meneame Deskbar – Enviar noticias a Meneame desde tu escritorio Ubuntu

Escrito el 23 de May del 2007 por artux.
Categoria: Desarrollo, GNU/Linux, Open Source, Programacion, Recursos.

Deskbar es una aplicación para Gnome, casi tan funcional como Quicksilver (Mac) y mucho menos conflictivo que Launchy (Win), con una simple combinación de teclas (Alt+Space en mi caso) te permite ejecutar aplicaciones, realizar búsquedas en los directorios locales y también en la web, y unas cuantas cosillas más.

Deskbar en acción

meneame deskbar

Por otro lado, Meneame es, en líneas generales, la aplicación web que casi todos los programadores/desarrolladores queremos llegar a hacer algún día, entiendase ese “llegar a hacer” no como hacer un clon de meneame sino como llegar a hacer una aplicación que genere una gran comunidad y aporte algo a todo esto que es el mundo Internet.

Meneame Deskbar – Meneando desde Ubuntu.

Meneame Deskbar es un plugin en Python que hice para Deskbar-Applet, permite mandar noticias a meneame con solo ingresar la URL de la noticia a menear.

meneame deskbar screen

Instalar Meneame Deskbar en Ubuntu

  • Si no tenés Deskbar Applet lo primero es instalarlo de la siguiente manera:
    sudo apt-get install deskbar-applet
  • Luego descargar Meneame Deskbar del siguiente enlace:
Download Image Download: Meneame Deskbar Downloads: 2667 times
  • Descomprimir meneame.tar.gz y copiar los archivos meneame.py y meneame.png en el directorio /home/nombreusuario/.gnome2/deskbar-applet/handlers/.

    Nota: nombreusuario es el nombre de tu usuario en Ubuntu y “.gnome2″ tiene punto porque se trata de un directorio oculto.

  • Abrir meneame.py con un editor (gedit) y en la línea número 30 donde dice UBUNTU_USER = “nombreusuario remplazar nombreusuario por el nombre de tu usuario en Ubuntu. Y eso es todo, ya podés empezar a menear noticias desde tu escritorio Ubuntu

Pequeño Truco con Firefox y Meneame Deskbar (accesos rápidos de teclado).

En Firefox:

Ctrl+L = Puntero en la barra de navegación.
Ctrl+C = Copia la URL que queremos menear.

En Desckbar, Meneame Deskbar:

Alt+F3 = Puntero en el campo de texto de Deskbar.
Ctrl+V = Pega la URL que copiamos.
Flecha Abajo hasta la opción Menear http://loquesea…..
ENTER = Para mandar la noticia a Meneame

Ante cualquier duda, sugerencia o crítica; no sean tímidos y comenten.

6 comments.

Opciones para resaltar el Código (Primera parte)

Escrito el 22 de May del 2007 por artux.
Categoria: Desarrollo, Programacion, Recursos, Tutoriales.

Estas son algunas de las tantas opciones que existen para darle formato y estilo a nuestro código, algunas probablemente ya las conoces y otras quizas no. Pero, con sus pros y sus contras, todas son muy buenas; implementar una o la otra es solo una cuestión de diferentes necesidades y en ultima instancia una cuestión de gustos.

Diferentes Opciones para Resaltar el Código

Opciones ServerSide o del lado del Servidor:

Ejemplo:

<?php

 //Resaltando una cadena de texto.
 highlight_string ('<?php phpinfo(); ?>');

 //Resaltando un archivo entero.
 highlight_file('file.php'); 

?>

Son dos funciones extremadamente simples de usar, y si tenemos acceso al archivo php.ini podemos personalizar los colores a nuestro gusto:

Parametros que podemos editar en el archivo php.ini para cambiar el color de salida.

highlight.string = #DD0000 (Color para las cadenas encerradas en comilla simple o doble comillas).

highlight.comment = #FF9900 (Color para los comentarios en el código).

highlight.keyword = #007700 (Color para algunas de las palabras claves del lenguaje como son if, else, for, while).

highlight.bg = #FFFFFF (Color para el fondo).

highlight.default = #0000BB (Color para lo que queda fuera de las demas categorías).

highlight.html = #000000 ->Negro (Color para lo que esta fuera de las etiquetas <?php ?> como código html o javascript).

  • 2- PHP_Highlight: Clase PHP que, como las funciones mencionas anteriormente, solo sirve para resaltar código PHP. Nos ofrece una salida en XHTML valido y crea además enlaces referenciales de las diferentes funciones PHP apuntando al manual online del mismo.
    También brinda tres formatos de salida (array, lista ordenada, y html puro)

Ejemplo de uso:

<?php
 require_once 'PHP_Highlight.php';

 $h = new PHP_Highlight;
 $h->loadFile('file.php');

 // Salida en formato Array
 echo "<h3>En forma de Array</h3>";
 echo "<pre>";
 print_r($h->toArray());
 echo "</pre>";

 // Salida en formato de Lista Ordenada
 echo "<h3>Lista Ordenada</h3>";
 $h->toList(false);

 // Salida en formato html
 echo "<h3>En HTML basico</h3>";
 $h->toHtml(false);

?>

Si queremos personalizar los colores de salida podemos agregar la siguiente linea y adjuntar una hoja de estilos CSS con los colores que deseamos.

<?php
 require_once 'PHP_Highlight.php';

 $h = new PHP_Highlight;

//Esta línea nos ofrecera la posibilidad de personalizar los colores.
 $h->PHP_Highlight (true);

 $h->loadFile('file.php');

/* y lo que sigue */

?>

La hoja de estilos tendría que ser mas o menos así, poniendo el color en hexadecimal que queremos:

.bg {
   color: #000000;
}
.string {
   color: #000000;
}
.keyword {
   color: #000000;
}
.comment {
   color: #000000;
}
.html {
   color: #000000;
}
.default {
   color: #000000;
}

La librería PHP_Highlight depende de un archivo llamado T.php, que es parte del paquete de PEAR PHP_Compat.

  • 3- Generic Syntax Highlighter: Más conocida como GeSHi, es sin dudas la herramienta más completa escrita en PHP para resaltar código; a diferencia de las dos formas anteriores GeSHi soporta mas de 50 lenguajes, entre ellos PHP, HTML, CSS, Java, C, Lisp, XML, Perl, Python y muchos otros.

Ejemplo Basico de uso:

<?php 

include_once('geshi.php');

// Definiendo un poco de código para resaltar

$source = '$foo = 45;
for ( $i = 1; $i < $foo; $i++ )
{
  echo "$foo<br />\n";
  --$foo;
}';

$language = 'php';

$geshi =& new GeSHi($source, $language);

echo $geshi->parse_code();

?>

Por ahora esto es todo para esta primera parte, en la segunda voy a profundizar más en los métodos y formas de trabajar y configurar GeSHi. También, en la segunda parte voy a escribir sobre unas cuantas opciones más, algunas para resaltar el código del lado del cliente y también sobre alguna que otra aplicación para hacer lo mismo pero desde el escritorio.

Espero que sea útil, un saludo grande!

4 comments.

Prototype Quick Reference

Escrito el 11 de May del 2007 por artux.
Categoria: Desarrollo, Firefox, Personales, Programacion, Recursos.

Ultimamente estoy utilizando mucho Prototype para algunos trabajos; y visitando el blog de bartelme encontre un widget, realizado por el, para acceder de forma rápida a la documentación oficial del API de Prototype. El widget de nombre Prototype Reference Widget, realizado por bartelme, es sinceramente hablando, estéticamente perfecto y extremadamente útil.
Pero el incombeniente fundamental es que el mencionado widget esta hecho para el Dashboar de Mac.

Es muy comun para los que no estamos trabajando todo el tiempo con las mismas funciones, sea del lenguaje que sea, el hecho de no recordar ciertos aspectos o métodos de funciones que ya hace tiempo no implementamos. Y es ahi donde este tipo de herramientas, simples pero útiles, vienen a socorrernos; ahorrandones el tiempo de recorrer toda la documentación disponible para llevarnos directamente a lo que necesitamos.

Prototype Quick Reference

prototype quick reference

Pensando en esto, y en lo bien que me vendria el widget de bartelme, hice Prototype Quick Reference, una herremienta simple, útil y que puede usarse desde cualquier Sistema Operativo, con el plus de poder instalarlo como Search Plugin en Firefox.

Digo simple, porque la aplicación en si es muy sencilla, solo unas cuantas líneas para transformar los parametros en url, lo único que me llevo un poco de tiempo fue el diseño, que por cierto me quedo más que bien, aunque mi ego dice que perfecto ;) .

Pero basta de palabras, es hora de probarlo. Funciona de la misma manera que el widget de bartelme. Pudiendo acceder a las especificaciones de las diferentes funciones y utilidades de Prototype tipeando solamente el nombre correspondiente.

Ejemplo: tipeando Ajax Updater o ajax.updater llegaremos instantaneamente a las especificaciones de dicha función.

Aunque tengo pensado extender la aplicación, para que muestre la documentación en el mismo sitio y en español, por el momento creo que con esto se puede trabajar de una forma más dinámica con Prototype.

Tambien, para los amantes de los widgets, transforme el widget para mac de bartelme en un widget para yahoo! widgets que pueden descargar desde el siguiente enlace Prototype Quick Reference Widget.

Saludos a todos!

0 comments.

Dark Theme para WordPress Traducido

Escrito el 3 de May del 2007 por artux.
Categoria: Desarrollo, Open Source, Recursos, Wordpress, WP-Themes.

Si hay un diseñador que admiro, ese es Wolfgang Bartelme; la visión que tiene del espacio, el manejo de los colores y la meticulosidad a la hora de los detalles; lo convierten en un referente indiscutible para cualquier persona que aspire a ser un gran diseñador.

Hoy tengo una buena noticia, el theme que usaba anteriormente Bartelme fue convertido por la gente de ilemoned en un Theme para WordPress de nombre “The Dark Theme” y liberado bajo GPL, el cual me tomé el atrevimiento de traducir al español.

The Dark Theme – En Español

darktheme
El Theme soporta los siguientes plugins:

  • flickrRSS
  • Gravatar
  • Ultimate Tag Warrior
  • WP-PageNavi

Puedes descargarlo desde el suiguiente enlace:

9 comments.

Artux’s Blog en tu escritorio con Yahoo! Widgets

Escrito el 23 de April del 2007 por artux.
Categoria: Desarrollo, Misceláneas, Personales, Programacion, Recursos, Tecnología.

yahoo widgets Hace unos cuantos días revisando las estadísticas de mi sitio, con un poco de ayuda de matemática básica (+,-) :P , descubro que la mayoría de visitantes y/o lectores de mi blog, son usuarios de windows.
Para ser más específico:

  • 67% de las visitas usan Windows en sus diferentes variantes.
  • 24% de las visitas usan Linux en sus diferentes sabores.
  • 9% de las visitas usan Macintosh.

Teniendo en cuenta este indicador, y para que se entienda de una vez por todas, que no todos los usuarios de Linux somos fanáticos religiosos que queremos imponer a toda costa nuestras ideas. Hice un widget para Yahoo! Widgets que permite tener los últimos post de Artux’s Blog en el escritorio, tanto de usuarios Windows como de usuarios Macintosh, que sumados son el 76% del total de usuarios de este humilde blog.
Para ellos es este regalo, con la esperanza de que uno de estos días se animen a cambiarse a Linux.

artuxwidget

Para usar el widget Artux’s Blog RSS Feed es indispensable tener instalada la plataforma de Yahoo! Widgets. Todos los interesados pueden descargarlo desde los siguientes enlaces.

Saludos! y que lo disfruten.

3 comments.

Google AJAX Feed API

Escrito el 19 de April del 2007 por artux.
Categoria: Desarrollo, Programacion, Recursos, Tecnología.

Google anunció ayer Google AJAX Feed API, un api que mediante código javascript nos permite obtener los feeds de cualquier sitio que este indexado por Google, haciendo de la sindicación de contenidos algo mucho más simple y posibilitando la programación de mashups (aplicaciones web híbridas) de una forma mucho menos trabajosa.

El api ofrece los resultados en JSON, por defecto, pero también se puede obtar por XML o una mezcla de ambos. Se puede ver un ejemplo de implementación desde el blog oficial, Google Ajax Search API: Anuncio del Google Ajax Feed API

Más adelante voy a postear alguna que otra cosita sobre este API, por ahora pueden leer más desde la página oficial del API: Google Ajax Feed API, y también en el mismo sitio, la Guía para Desarrolladores.

1 comment.

Json, WordPress y PHP (segunda parte)

Escrito el 7 de April del 2007 por artux.
Categoria: Desarrollo, Programacion, Tutoriales, Wordpress.

Nota importante: El archivo wp-json.php original mencionado en el post anterior, tiene un minúsculo error de syntaxis; en las parejas {“clave” : “valor”} {“key” : “value”} la definicion de las diferentes claves esta hecha sin comillas, lo cual puede provocar errores de lectura en algunas aplicaciones.

Para solucionar este pequeño inconveniente, edité el wp-json.php original agregándole las comillas faltantes, y además retoqué un poco el código para que la función callback pueda ser definida por el cliente. Pueden ver el archivo resultante en el siguiente enlace: wp-json.php (editado) o desde este otro Feed en Formato JSON para WordPress.

Hecha la aclaración, paso a completar este post con la segunda parte que quedé debiendo :) .

Json, WordPress y PHP (segunda parte)

3- PHP y JSON

Exiten parses de JSON para la mayoría de lenguajes de programación, y como no podría ser de otra forma también para PHP.

Sin embargo la forma en que llevaremos esto acabo va a depender de la versión de PHP que estemos utilizando y de las posibilidades que ofrezca nuestro servidor de hosting.

Explicando mejor esto.

En PHP desde la versión 5.2.0 viene incluida una extencion para codificar y decodificar JSON habilitada por defecto. Pero no todos los servidores de hosting funcionan con PHP 5, es mas, la gran mayoria solo lo hacen con PHP 4, en ese caso se puede utilizar la libreria de PEAR llamada Services_JSON.

Ejemplificando para que se entienda.

  • JSON con PHP 5:
    =========================================
    <?php
    
    //codificando un array en formato JSON
    
    $arr = array ('a'=>1,'b'=>2,'c'=>3,'d'=>4,'e'=>5);
    
    echo json_encode($arr);
    
    ?>
    
    /*Nos devuelve lo siguente
    
    {"a":1,"b":2,"c":3,"d":4,"e":5}
    */
    =========================================
    
    =========================================
    <?php
    
    //decodificando JSON
    
    $json = '{"a":1,"b":2,"c":3,"d":4,"e":5}';
    
    var_dump(json_decode($json));
    var_dump(json_decode($json, true));
    
    ?>
    
    /*Nos devuelve lo siguente
    
    Sin parametro opcional devuelve un objeto
    
    object(stdClass)#1 (5) {
        ["a"] => int(1)
        ["b"] => int(2)
        ["c"] => int(3)
        ["d"] => int(4)
        ["e"] => int(5)
    }
    
    true como parametro opcional devuelve un array asociativo
    
    array(5) {
        ["a"] => int(1)
        ["b"] => int(2)
        ["c"] => int(3)
        ["d"] => int(4)
        ["e"] => int(5)
    }
    */
    =========================================
    

Se puede leer más sobre el método anterior en el sitio oficial de PHP.

  • JSON con PHP 4:
    solo necesitaremos descargar el archivo Services_JSON y hacer lo siguiente.

    =========================================
    
    // creando un nueva instancia del Services_JSON
    
    require_once('JSON.php');
    $json = new Services_JSON();
    
    // convirtiendo un array en formato JSON
    
    $value = ('a'=>1,'b'=>2,'c'=>3,'d'=>4,'e'=>5)
    $output = $json->encode($value);
    print($output);
    
    // decodificando JSON
    $input = '{"a":1,"b":2,"c":3,"d":4,"e":5}';
    $value = $json->decode($input);
    
    =========================================
    

Con esto creo que ya podemos empezar a trabajar con PHP y JSON. Tambien, si no queremos trabajar con la clase Services_JSON, existe la posibilidad de instalar la extencion json disponible en PECL; pero para ello tendremos que tener acceso al archivo php.ini y no todos los servidores de hosting lo permiten.

4- JSON, WordPress y PHP

Para ir terminando, solo nos queda hacer interactuar estas tres tecnologias.

Por un lado ya tenemos el archivo wp-json.php, que nos genera un feed de nuestro blog en formato JSON; por otro lado en las líneas anteriores aprendimos a codificar y decodificar JSON con PHP. Lo que haremos entonces, sera un minilector en PHP del feed JSON, generado por el ya mencionado wp-json.php, que nos muestre el último post de nuestro blog.

Para el ejemplo voy a usar la clase Services_JSON.

=========================================

<?php

//incluyo el archivo que hara el trabajo de decodificacion
include ('json.php');
$json = new Services_JSON();

//peticion del feed JSON
$site = file_get_contents('http://www.tublogwordpress.com/wp-json.php');

//decodificando la data recibida en formato JSON
$value = $json->decode($site);

//rescatando los valores mediante la funcion get_object_vars ()
$data = get_object_vars($value);
$show = get_object_vars($data['entries']['0']);

//armando la salida a mostrar
$titulo = $show['title'];
$link = $show['id'];
$contenido = $show['content'];

//formateando la salida
$content = "<div id='json'>\n";
$content .= "<h2><a href='" . $link . "'>" . $titulo . "</a></h2>\n";
$content .= $contenido;
$content .= "</div>";

//mostrando el resultado
echo $content;

?>

=========================================

Pueden ver un ejemplo funcionando que muestra el último post de anieto2k.com desde aquí. Es un poquito más completo y además cachea el contenido cada una hora para evitar sobrecargas.

Tambien pueden ojear el código de dicho ejemplo desde aquí.

Por ahora esto es todo, espero que les sirva para algo. Estoy un poco cansado y hambriento asi que me despido con un gran saludo!. Ante cualquier duda o sugerencia pueden dejar un comentario.

Saludos!!

13 comments.

Json, WordPress y PHP (primera parte)

Escrito el 3 de April del 2007 por artux.
Categoria: Desarrollo, Programacion, Tecnología, Wordpress.

Sin dudas todos conocen que es WordPress, y no creo que exista alguien que no sepa que es PHP; pero si son muchos los que todavia no conocen o no estan familiarizados con JSON (acrónimo de “JavaScript Object Notation”).

En el siguiente post, que por cuestiones de longitud :P estara dividido en dos partes, voy a tratar de explicar, en una forma medianamente breve, como hacer interactuar estas tres tecnologias.

Sumario:

  • Primera Parte:

    1. ¿Que es JSON?
    2. WordPress y JSON
  • Segunda Parte:
    1. PHP y JSON
    2. JSON, WordPress y PHP

1- ¿Que es JSON?

JSON es un subconjunto de la notación literal de objetos de Javascript pero no requiere el uso de Javascript”anieto2k

JSON es hoy en día un formato de intercambio de datos comparable con el formato XML, y para algunos superior a este último.

Si bien JSON en un principio fue pensado como una forma más sintética de programar javascript, ya que este metodo convierte la programacion de codigo en algo más literal (ver ejemplo*), facil de leer y escribir para las personas y facil de interpretar y generar por las maquinas, la simplicidad que ofrece a la hora de transportar y evaluar datos lo convierte en un formato de intercambio rapido y facil de implementar, llegando a ser elegido sobre el XML, por muchos (Goolge, Yahoo, etc.) para algunas de sus aplicaciones.

JSON está constituído por dos estructuras:

  • Una colección de pares de nombre/valor. En varios lenguajes esto es conocido como un objeto, registro, estructura, diccionario, tabla hash, lista de claves o un arreglo asociativo.
  • Una lista ordenada de valores. En la mayoría de los lenguajes, esto se implementa como arreglos, vectores, listas o sequencias.json.org

ejemplo*:

Definicion Tradicional de un Objeto en Javascript:

var obj = new Object();
obj.nombre = "Juan";
obj.getNombre = function(){
return this.nombre;
}

Difinicion con Json:


var obj = {
nombre: "Juan",
getNombre: function(){
return this.nombre;
}
}

2- WordPress y JSON

WordPress ofrece varios formatos de salida en XML para la sindicacion, como son RSS y ATOM, pero por defecto no trae incluida ninguna funcion que posibilite la salida del contenido en formato JSON. Aunque esto, en si, no es un problema ni un defecto de WordPress si es algo que tiene solucion, ademas la posibilidad de ofrecer el contenido en un formato mas, en este caso JSON, nunca viene mal.

Hace ya unos cuantos días atras anieto2k posteo sobre uno de sus hallazgos a los que nos tiene acostumbrados, nadie sabe como hace para encontrar esas cosas, pero el hecho es que el hallazgo de anieto no es otra cosa que wp-json.php wp-json.php (corregido), un archivo que con solo colocar en el directorio raiz de nuestro blog posibilita la sindicacion de contenidos en formato JSON.

Se puede ver su salidad, con cualquier aplicacion que interprete este tipo de formato (JSON), apuntando a la siguiente url:
http://www.artux.com.ar/wp-json.php

Como bien nos cuenta anieto en su post, las posibilidades son las mismas que en el feed XML:

  • Para Busquedas:

    Para buscar dentro del blog todas las entradas que contengan la palabra wordpress, solo bastaría con hacer algo así:

    http://www.artux.com.ar/wp-json.php?s=wordpress

  • Para las Categorías:

    Para mostrar las últimas 10 entradas de una categoría en particular, deberemos conocer el ID de la categoría y hacer algo asi:

    http://www.artux.com.ar/wp-json.php?cat=10

  • Para un Post determinado:

    Para mostrar un post en particular, deberemos conocer el ID del post y hacer algo asi:

    http://www.artux.com.ar/wp-json.php?p=37

Y alguna que otra más.

Con esto, llegamos al fin de esta primera parte, ya tenemos una minuscula idea de que es JSON y como integrarlo en WordPress. En la segunda parte veremos las diferentes opciones para trabajar con JSON y PHP, y como leer con PHP el archivo wp-json.php, servido por nuestro WordPress.

Enlaces:

  • json.org (Sitio oficial de JSON – en ingles)
  • JSON (Entrada en la Wikipedia)
  • JSON-Syndication (Lista de correo wp-hackers donde se encuentra el archivo wp-json.php)

Saludos!

5 comments.

Who Link Here 0.2 actualizado – WordPress Plugin

Escrito el 15 de March del 2007 por artux.
Categoria: Desarrollo, Programacion, Wordpress, WP-Plugins.

“Una mejor forma de hacer el BlogRoll, pagando con la misma moneda a quienes nos enlazan”

Hace unas semanas publique Who Link Here v 0.1 (WLH), un plugin para WordPress que muestra los últimos enlaces entrantes via Technorati. En ese momento prometí hacer una versión que en vez de utilizar la clase SimplePie, utilice las funciones internas de WordPress para parsear los RSS.

Lo prometido es deuda. Hoy me pude tomar un tiempito libre, y tocando un poco la versión anterior de WLH pude hacer esta segunda versión (Who Link Here 0.2), que ademas de mejorar el tiempo de carga, ofrece la opción de poder elegir entre mostrar los enlaces entrantes via Technorati o via Google Blog Search.

Como Instalar Who Link Here v.0.2

1. Descargar el plugin desde el enlace de descarga al final de este post.
2. Descomprimirlo y subir el directorio /who_link_here completo dentro del directorio de los plugins: /wp-content/plugins/
3. Vamos a la sección Plugins del panel de control de WordPress y activamos “Who Link Here” y listo, ahora solo resta integrarlo en nuestro Theme.

Como Integrar Who Link Here v.02 en nuestro Template

Antes que nada, hay tres formas posibles de usar WHL v.0.2, Mostrando solo los enlaces entrantes via Technorati; Mostrando los enlaces entrantes pero usando Google Blog Search o, la tercera, Mostrando los enlaces entrantes de las dos formas anteriores juntas.

1. Mostrando los Enlaces Entrantes via Technorati:

  • Para mostrar los enlaces via Technorati lo único que tenemos que hacer es agregar la función siguiente donde queremos que aparezcan los enlaces:
    <?php tech_links("num.enlaces") ?>
  • El primer parámetro num. enlaces es la cantidad de enlaces que queremos mostrar; por defecto y como maximo 10.

2. Mostrando los Enlaces Entrantes usando Google Blog Search:

  • Si solo queremos mostrar los enlaces entrantes indexados en Google Blog Search, tenemos que agregar la siguiente función donde queremos que aparezcan:
    <?php gbs_links("num.enlaces") ?>
  • El parámetro num.enlaces, es la cantidad de enlaces que queremos mostrar, teniendo 20 como máximo.
  • A diferencia de Technorati, Google Blog Search no excluye los enlaces del mismo host consultado, por lo tanto hice un pequeño filtro para que la función solo muestre los enlaces entrantes de sitios distintos al host consultado, lo que puede llegar a alterar el numero de enlaces a mostrar. La solución, incrementar el numero de enlaces a mostrar hasta que quede como queremos.

3. Mostrando los enlaces entrantes usando Technorati y Google Blog Search.

  • Dado que son dos funciones distintas, el uso de una no excluye a la otra, por eso, si queremos mostrar los enlaces entrantes usando los dos medios disponibles (Technorati, Google BS), solo basta con agregar las dos funciones, con sus correspondientes parámetros, en el o los lugares que queremos que se muestren.
Download Image Download: Who Link Here v 0.2 Downloads: 3589 times

Actualización 27/09

Nueva Versión 2.0 de Who Link Here con soporte para Widgets

45 comments.

Prototype el Framework JavaScript por excelencia al fin en Version Comprimida

Escrito el 10 de March del 2007 por artux.
Categoria: Desarrollo, Personales, Programacion, Tecnología.

prototype

Sin ningún lugar a dudas, todos sabemos que Prototype es el Framework JavaScript por excelencia, pero sin embargo son muchos los desarrolladores que a la hora de elegir un framework javascript, optan por uno de menor tamaño (e.j: jQuery; MooTools) para asi ahorrarse unos cuantos kbs en la carga de sus aplicaciones y/o sitios web.

Pues bien, para todos aquellos que en su momento pensaron en usar Prototype, pero sus casi 70kb los hicieron desistir, les tengo buenas noticias.

Parece ser que un auto denominado evangelizador de Prototype, John David Dalton, no tubo mejor idea que comprimirlo en todas sus versiones (1.4, 1.5rc0, 1.5rc1, 1.5 final); dejando el tamaño de la versión 1.5 final de Prototype en alrededor de los 19kbs lo cual representa aproximadamente 25% de la versión sin comprimir.

dice John David Dalton:

“…se que la mayoría de desarrolladores que actualmente usan Prototype, no reparan en su tamaño. Sin embargo he notado que muchos de los nuevos desarrolladores no le dan la importancia que merece, porque leen que es ‘pesado’ y ‘lento’. Esos desarrolladores entonces eligen otro framework y no le vuelven a dar a Prototype un segundo vistazo…”

y sigue John :

“Hice esta colección Comprimida de Prototype para ayudar a evangelizar sobre este Framework”

Por mi parte, estuve probando un poco la version 1.5 comprimida y la verdad que anda tan bien o mejor que la original sin comprimir. Es mas, la pude implementar en un par de aplicaciones con solo reemplazar la original por la versión comprimida sin tener que modificar nada.

Enlaces:

P.d.: casi seguro que mañana la integro en mi Theme de WordPress BlueContent.

nota: traducción apresurada ;) ;

5 comments.

Who Link Here (Quienes Enlazan Aquí) plugin para WordPress

Escrito el 27 de February del 2007 por artux.
Categoria: Desarrollo, Open Source, Wordpress, WP-Plugins.

Buscando plugins Made in Argentina para WordPress, llegue casi por accidente al blog de Guido Rossi (nooby.com.ar), y fue en ese mismo blog que encontré dos excelentes plugins desarrollados con una librería que me encanta (SimplePie).

Los dos plugins de Guido (My del.icio.us y Flickr Plugin), para los que preferimos evitar los widgets, son bastante fáciles de implementar y adaptar a cualquier template.

Como se abran dado cuanta por sus nombres, el plugin My del.icio.us nos permite cargar los últimos links que hayamos guardado en nuestras cuentas de del.icio.us y Flirckr Plugin nos permite mostrar en nuestros blogs las fotos que tengamos en nuestras respectivas cuentas de flickr.

En fin, como me gusto mucho la simpleza del codigo, agarre el plugin My del.icio.us y lo modifique un poco para hacer Who Link Here, un Plugin para WordPress que con solo poner una linea de código en el sidebar nos muestra Quienes nos elazan, usando para ello la API de Technorati. Pueden verlo en funcionamiento aqui mismo en el Sidebar.

who_link_here

Who Link Here, es una manera un poco más resiproca de hacer un blogroll, debolviendo el favor, a quienes nos enlazan, con la misma moneda.

Aunque ultimamente utilizo para parsear RSS las funciones integradas de WordPress, esta primera version del Plugin Who Link Here, al estar basada en My del.icio.us, usa SimplePie. Prometo liberar tambien, uno de estos dias (actualización: Who Link Here v. 0.2 publicado), otra version que utilice las funciones de wordpress.

Instalar Who Link Here.

Actualizacion: liberada la versión 0.2 de WLH, con mejoras en el tiempo de carga y la posibilidad de elegir entre Technorati o Google Blog Search …
leer más –>

1. Descargar el plugin desde el enlace de descarga:

2. Descomprimirlo y subirlo dentro de la carpeta /wp-content/plugins/
3. Vamos a la sección Plugins del panel de control de WordPress y activamos “Who Link Here”

Una vez instalado, solo nos queda editar el theme, poniendo la siguiente linea donde queremos que se muestre nuestro blogroll recirpoco:

<?php who_link(“apikey”, “num. enlaces”); ?>

El primer parámetro apikey, es la clave del api de Technorati, lo podemos obtener fácilmente desde el siguiente enlace: http://www.technorati.com/developers/apikey.html. Y el segundo parametro num. enlaces es la cantidad de enlaces que queremos mostrar.

Saludos!!

Nota: el plugin viene con una hoja de estilos que pueden editar para adaptar mejor al template (/who_link_here/wlh.css).

7 comments.

Primer Ranking de Blogs Rosarinos

Escrito el 24 de February del 2007 por artux.
Categoria: Desarrollo, Misceláneas, Personales.

Parece que un blogger (Horacio A. Bella) con mucho “Impetu” me gano de mano.

Si señores, la Ciudad de Rosario, ciudad en la que vivo, ya tiene Ranking de Blogs. Y aunque muchos en Rosario recien nos iniciamos en esta nueva forma de expresión y comunicación que son los Blogs,  creo no estar equivocado en decir que es una Ciudad con mucho potencial humano, y que puede, con el aporte de sus bloggers, enriquecer los contenidos de este Gran Fenómeno Cultural denominado por muchos Blogosfera.

Saludos!!

6 comments.