Wordpress: Crear un Planet en 20 minutos
02 de Abril de 2007 en Programación, WordPress, PHP
Lecturas: 6,551

PlanetCon la evolución de los sitios y la cada vez más masiva adaptación de CMSs como Wordpress, Joomla, etc, las sindicalizaciones toman mucha relevancia. El formato RSS y Atom estan pasando a un primer plano y su uso se ha extendido algo más allá de para lo que estaba previsto: los planets.

Un Planet es un sitio como otro cualquiera, pero que su contenido es simplemente la sindicalización de los feeds de otros sitios. Una forma interesante de crear alianzas de temáticas similares ;-)

En este artículo explico cómo montar un Planet usando Wordpress y un plugin a tal efecto: FeedWordpress.

Instalación

Para realizar nuestro planet necesitamos los siguientes elementos:

  • Un Wordpress acabado de instalar en un hosting.
  • El plugin FeedWordpress

La verdad es que no tiene ninguna complicación:

  1. Nos bajamos el plugin de aquí.
  2. Descomprimimos el archivo bajado
  3. Subimos el archivo feedwordpress.php en /wp-content/plugins/
  4. Subimos el archivo update-feeds.php en /wp-content/
  5. Subimos (sobreescribiendo) los archivos rss.php y rss-functions.php en /wp-includes/
  6. Activamos el plugin
  7. Setamos un cron en nuestro servidor para que ejecute update-feeds.php cada cierto tiempo.

Los únicos pasos que pueden plantear alguna duda son el 5 y el 7. Los archivos a sobreescribir son los encargados de realizar las lecturas y parseos de los archivos XML RSS. Aunque se anuncia que este paso es opcional, la actualización de contenido no me funcionó hasta que actualicé estos archivos.

Sobre el tema del cron, a estas alturas ya deberíamos saber que es la forma que se tiene en un servidor para realizar una tarea periódicamente. en nuestro caso, realizaremos una actualización de contenido cada cierto tiempo. La periodicidad dependerá mucho de la asiduidad de publicación de los sitios que vamos a registrar como colaboradores. Yo lo puse cada 30 minutos:

30 * * * * /usr/bin/php -q /public_html/nombre_sitio/wp-content/update-feeds.php

Configuración

Una vez activado el plugin nos quedan hacer algunos ajustes. Vamos a dirigirnos a Opciones > Sindication y encontramos la configuración general del plugin. Aquí debemos prestar atención, pues estas opciones se refieren al comportamiento del contenido sindicado, como por ejemplo publicar el contenido automáticamente, que los enlaces vayan al sitio original, crear las categorías de los artículos sindicados automáticamente, … Pensemos cómo queremos que funcione nuestro Planet. En mi opinión, se debería mantener todo lo referente al sitio y autor original.

Inscripción de sitios fuente

Para que todo empiece a funcionar, debemos inscribir los sitios de los que capturaremos su contenido. Debemos saber que por defecto se recogen los feeds de los sitios que se encuentran en el BlogRoll incial. Puede que sea interesante cambiar el nombre a la categoría de enlaces a algo más descriptivo como “colaboradores”.

En la pestaña BlogRoll aparecerá una nueva opción “Syndicated” dónde podemos administrar los sitios a sindicar y editar las propiedades de cada uno. Si le damos a la opción “Editar” de uno de los sitios veremos que podemos especificar las mismas opciones que hemos configurado antes a nivel general, pero en este caso sólo afectarán al sitio en cuestión. Útil para manejar varios tipos de feeds ;)

Cuestiones a tener en cuenta

Debemos recordar que lo único que estamos haciendo es recoger los feeds de los sitios y generar un artículo por cada entrada en el feed. Así que todos los plugins que sean usados en los posts de los sitios originales será necesario que los tengamos instalados en nuestro Wordpress para que funcionen, como por ejemplo el que muestre los vídeos de YouTube, galerías de imágenes, … sobre ésto, el mayor problema viene al leer los feeds de otros CMSs diferentes al Wordpress, como es el caso de Joomla. Éste usa otros plugins diferentes que almacenan tags distintos en los posts para relaizar tareas parecidas (seguimos con el ejemplo de los vídeos de YouTube), así que o nos generamos unos plugins nosotros mismos o modificamos los nuestros para dar soporte a estos tags diferentes.

Otros plugins que deberíamos instalar

Además del plugin FeedWordpress absolutamente necesario, sería conveniente instalar un par más para tener un control sobre las visitas que recibimos y para dar la opcion de que se pongan en contacto con nosotros. Por ello recomiendo instalar el plugin ShortStats, que agrega una pestaña en el Dashboard con información sobre las visitas, los referers, las consultas a Google que desenbocan en nuestro sitio, etc, y el ContactForm, que nos da la posibilidad de agregar un formulario de contacto en una página.

Una Demo

Como ejemplo de lo escrito, podéis visitar planet.ladragonera.com, una prueba personal de un planet sobre Wordpress usando este plugin. Aunque está en catalán, muestra perfectamente lo comentado con los plugins y las diferencias entre los feeds de Wordpress y Joomla, y la creación automática de categorías.

Salud!
HowTo inicial: SiGT.net [Cómo hacer un Planet con Wordpress]

Tag:
 Enviar a Fresqui

Leer los Comentarios

[ # 495 ] Comment desde MarioFX [11 de Abril de 2007, 09:14]

Hola que tal:

No la tengo muy clara con esto del cron, quería preguntarte: “usr” debe cambiarse por el nombre de la cuenta de usuario en el hosting o solo es una llamada al archivo php correspondiente?
Desde ya, gracias por la respuesta,
Saludos.

[ # 496 ] Comment desde Xavi [11 de Abril de 2007, 09:45]

Buenas

la cadena “/usr/bin/php” define la ubicación en el sistema del ejecutable de PHP, es decir, lo que vendría a ser el programa que ejecuta PHP. Normalmente está instalado en esa ubicacion en un Linux. Si el servidor es un Windows o tienes el ejecutable instalado en algún otro sitio, deberás sustituir toda la cadena “/usr/bin/php” por la ruta hacia el ejecutable, por ejemplo “c:\php\php.exe” en un Windows.

Contacta con el administrador de tu hosting para saber dónde se encuentra.

[ # 497 ] Comment desde Xavi [11 de Abril de 2007, 09:48]

Y otra cosa, la cadena “/public_html/nombre_sitio/wp-content/update-feeds.php” es la ruta hacia el archivo “update-feeds.php”. En mi caso puedo usar la ruta relativa a mi usuario, que empieza siempre por “/public_html/” y luego, como tengo varios sitios en mi hosting, el directorio del sitio dónde lo tengo instalado.

Asegúrate de la ruta hacia el archivo “update-feeds.php” en tu servidor. Si no estás seguro de cuál es, casi siempre es mejor usar la ruta absoluta.

[ # 513 ] Comment desde MarioFX [12 de Abril de 2007, 04:04]

Hola Xavi:

Configuro el cron por medio de la opción de cPanel, usando la forma que sugieres aquí, pero a mi mail me llega un cron daemon, indicándome este error:

“No input file specified.”

estoy probando el añadir un /home/nombredeusuario/ antes del /public_html a ver si así funciona. Mi servidor funciona con Linux. Servirá esta forma, o es incorrecta?

El readme de feedwordpress incluye esta otra:

cd $HOME/www/wp/wp-content ; php -q update-feeds.php

Como tengo el planet en el directorio raíz saco “wp”, pero en $HOME qué pongo?

Nuevamente, gracias por la ayuda.

[ # 517 ] Comment desde Xavi [12 de Abril de 2007, 08:40]

Hola Mario

Yo también lo hago por CPanel. El error que te envía por mail dice que no hay archivo a ejecutar. Así que supongo que no encuentra la ubicación del update-feeds.php

Lo que podrías hacer es un phpinfo() y subirlo al servidor. Entonces descubrirás la ruta absoluta directa hacia tu cuenta en el servidor, le pones el resto de la ruta y casi seguro que funciona ;)

El sistema que me dices del readme no es mala. Primero selecciona el directorio y luego ejecuta el php pasándole el archivo, pero se fía de que el ejecutable de php esté inscrito en el PATH, cosa que no se cumple siempre. Puedes probarlo cambiando “php” por “/usr/bin/php” y quitando el “wp” como dices, pero puede que te de el mismo problema porque no sabes a priori la ruta.

Ya me cuentas qué tal.

Saludos.

[ # 519 ] Comment desde MarioFX [12 de Abril de 2007, 12:46]

Hola: al final funcionó con tu forma y poniendo /home/nombredeusuario/ antes del /public_html como te había dicho.

Gracias por la ayuda!
Saludos,
Mario.

[ # 521 ] Comment desde Xavi [12 de Abril de 2007, 02:29]

Bueno, pues me alegro ;)

Disfrútalo :D

[ # 961 ] Pingback desde La Dragonera » L’atac dels referers extranys! :: Informatica, Motos, Lletres de Cançons [10 de Mayo de 2007, 09:52]

[…] www.pti-m-tron.com (crear un planet) […]

[ # 2211 ] Pingback desde SmallSquid.com » Planet de la red de blogs SmallSquid.com [02 de Julio de 2007, 02:45]

[…] Un primer acercamiento a esta idea ha sido la de crear un planet, Articulos.biz, en el que se recogen los articulos publicados en cada uno de los blogs de la red. Con esto, simplemente conseguimos el objetivo de tener agrupados los posts. Pero nos permitirá estudiar sus efectos, tanto negativos como positivos de tener duplicada esta información. […]

[ # 5547 ] Comment desde Fernando [19 de Septiembre de 2007, 01:22]

Estimado Marcelo

Gracias a las explicaciones de tu pagina he podido instalar sin problema el feedwordpress, muchas gracias sin embargo, al momento de llegarme los articulos sindicados, solo me llegan partes los encabezados para ser exacto.

Estoy Realizando las pruebas en http://www.gasypetroleo.tarijaindustrial.com

puedo crear una cuenta para que puedas ver mi configuracion para poder ayudarme, si es que dispondrias de tiempo

atte

Fernando Salinas

[ # 5548 ] Comment desde Xavi [19 de Septiembre de 2007, 01:27]

Hola Fernando. Soy Xavi, no Marcelo.
Me alegro que las explicaciones te hayan servido.

Sobre lo de los encabezados, és pasa muchas veces, y tiene que ver con el archivo XML que se está capturando. Has comprobado que te esté llegando más que el encabezado? Algunas webs no incluyen descripción ni extracto del artículo.

Un saludo.

[ # 5550 ] Comment desde Fernando [19 de Septiembre de 2007, 02:35]

Hola Xavi

Quisiera que me podrias ayudar mira he creado la siguiente cuenta como administrador
login : usuario
pass : ******

http://www.gasypetroleo.tarijaindustrial.com

Espero que puedas ayudarme un poco con este problema

atte

Fernando

[ # 5551 ] Comment desde Xavi [19 de Septiembre de 2007, 02:56]

Como entenderás, te he escondido la contraseña, a no ser que quieras un aluvión de visitas dispuestas a petarte el sitio.

Cómo no, te echaré un cable, pero no hoy, que me está empezando una gripe y no me siento con fuerzas.

Pero… has mirado los archivos XML de origen a ver qué llevan? No todos llevan lleno el campo descripción…

Saludos.

[ # 5553 ] Comment desde Fernando [19 de Septiembre de 2007, 03:19]

Muchas Gracias Xavi

Espero tus comentarios

atte

Fernando

[ # 5554 ] Comment desde Xavi [19 de Septiembre de 2007, 03:22]

Puedes por favor contestar a mi pregunta? Entenderás que no voy a solucionarte nada sin que tu trabajes un poco. Esto no es un servicio técnico ;)
Saludos.

[ # 5568 ] Comment desde Fernando [19 de Septiembre de 2007, 08:43]

Disculpa Xavi

Entiendo que no eres un servicio tecnico, sin embargo si no te he contestado es por que no se como ver los XML de otro blog, tambien estoy averiguando si puede ser problema de mi version es 2.0.11 y le voy a poner el plugin completerss que puede ser el problema

[ # 5870 ] Comment desde Xavi [25 de Septiembre de 2007, 02:51]

Ok, he intentado entrar a la direccion dada, y no puedo entrar con esos datos.

Por otro lado, viendo la version, creo que debes actualizar las bibliotecas que hacen funcionar el RSS. Lo que no recuerdo de donde… luego te lo digo.

[ # 5872 ] Pingback desde ¡Código Guipuzcoa: en marcha! | WEBDEV [25 de Septiembre de 2007, 03:57]

[…] Una vez más, gracias a SyntaxError por sus excelentes artículos. Gracias a éste, montar el planet ha sido cosa de media hora. […]

[ # 27188 ] Comment desde diseño web [04 de Julio de 2008, 09:03]

la idea es buena, pero exporta todos los errores de las fuentes, así como posibles imagenes bloqueadas.

Escribe un Comentario





Estadísticas