Crear widget exportable a otras páginas web con el contenido de tu wordpress
![]()
Para crear el widget hay 2 pasos fundamentales.
- Crear un canal RSS con el contenido que deseas exportar
- Crear el widget, puedes usar uno de las muchas aplicaciones online disponibles o simplemente programarlo
Para el primer paso debemos especificar a wordpress que queremos crear un nuevo canal feed RSS, este canal aparecera con la siguiente extrucutura URL:
http://www.ejemplo.com/?feed=ejemplo
http://www.ejemplo.com/feed/ejemplo/
Para ello creamos las siguientes funciones:
function mostrar_feed() { echo "hola mundo"; } function incluir_feed() { add_feed('publicadas', 'mostrar_feed'); } add_action('init','incluir_feed');
Esto podemos incluirlo como plugin o dentro del archivo functions.php de nuestro theme.
Ahora dentro de la funcion mostrar_feed() indicamos el contenido RSS que queremos crear, aqui un ejemplo del codigo que he usado para http://www.partidarios.com/?feed=publicadas:
function mostrar_feed($comment) { echo ' <rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" > <channel> <title>Partidarios</title> <atom:link href="http://www.partidarios.com/?feed=publicadas" rel="self" type="application/rss+xml" /> <link>http://www.partidarios.com</link> <description>Feed con las ultimas publicadas de los partidos politicos.</description> <lastBuildDate>Sat, 17 Sep 2011 09:45:25 +0000</lastBuildDate> <language>es</language> <sy:updatePeriod>hourly</sy:updatePeriod> <sy:updateFrequency>1</sy:updateFrequency> <generator>http://wordpress.org/?v=3.2.1</generator>'; $the_query = new WP_Query(array( 'cat' => 27, 'meta_key' => 'publicada', 'meta_value' => '1' )); while ($the_query->have_posts()) : $the_query->the_post(); $id_partido2 = get_post_custom_values('id_partido'); $id_partido = $id_partido2[0]; $facebook = get_post_custom_values('facebook', $id_partido); $partido = get_the_title($id_partido); $mensaje = get_the_title(); if(strlen($mensaje) > 245) { $mensaje = substr($mensaje,0,245).'...'; } echo "\n<item>\n"; echo "<title>$partido: $mensaje</title>\n"; echo "<link>".get_permalink(get_the_ID())."</link>\n"; echo "<comments>".get_permalink(get_the_ID())."#comments</comments>\n"; echo "<pubDate>".get_the_date('D, d M Y H:i:s O')."</pubDate>\n"; echo " <dc:creator>admin</dc:creator>\n <category><![CDATA[Mensaje]]></category>\n"; echo '<guid isPermaLink="false">'.get_permalink(get_the_ID())."</guid>\n"; echo "<description><![CDATA[]]></description>\n"; echo "<content:encoded><![CDATA[]]></content:encoded>\n"; echo "</item>\n\n"; endwhile; echo " </channel> </rss>"; }
Por ultimo podemos emplear una de las muchas aplicaciones online que genera widgets a partir de archivos RSS. Una de las más sencillas es http://www.widgeteasy.com
Artículos relacionados:
- Crear y configurar un widget de wordpress Para crear un widget con wordpress solo debemos definirlo en...
- 5 paginas web sobre SEO que deberias seguir Lo cierto es que las paginas web son una de...
- Crear Plantillas de themes para post en WordPress Podemos crear una plantilla para publicar post especificos en wordpress...