Cómo integrar los comentarios de un blog WordPress en una página web

Saturday, August 14, 2010 14:39
Posted in category Programación, Wordpress

Hace algún tiempo instalé un blog de WordPress en mi página del Camino de Santiago, pretendiendo a partir de él, crear una sección de noticias con los posts etiquetados como noticias dentro de la página. En la siguiente imagen comprederéis perfectamente lo que quería hacer:

noticias blog camino de sa santiago

Quería por tanto poder integrar los posts escritos en el blog en cualquier parte de mi página. Para llevar a cabo este desarrollo utilicé alguna de las funciones que nos da la Api de WordPress. El truco está en que todas las categorias del blog tienen un feed rss a partir del cual podemos seleccionar los artículos deseados.

El código necesario para mostrar los posts de una categoria sería el siguiente:

<?php
	$URL_BLOG   = "http://todosloscaminosdesantiago.com/blog/general/noticias/";
	$URL_FEED   = "http://todosloscaminosdesantiago.com/blog/general/noticias/feed/";
	$URL_TITLE  = "Leer todas las Noticias del Camino de Santiago";
	$FEED_TITLE = "Noticias del Camino de Santiago";
 
        include "plantillas/noticias.php";
 
					 ?>

El código que mostraria los artículos estaría en noticias.php:

<?php
//Incluimos las Apis de Wordpress
require('./blog/wp-blog-header.php');
require_once('blog/wp-includes/rss.php');
 
function rss_clean_html($text = "") {
	$especial=array('á','é','í','ó','ú','ñ','Á','É','Í','Ó','Ú','Ñ','€');
	$traducir=array('&aacute;','&eacute;','&iacute;','&oacute;','&uacute;','&ntilde;','&Aacute;','&Eacute;','&Iacute;','&Oacute;','&Uacute;','&Ntilde;','&#8364;');
	$text= str_replace($especial,$traducir,$text);
unset($especial);
unset($traducir);
$text = utf8_decode($text);
    return $text;
}
 
// Insertar la url del feed
$rss = @fetch_rss($URL_FEED);
// Recorremos todos los posts
if ( isset($rss->items) && 0 != count($rss->items) ) {
	?>
	<div style="display: block;" id="feedWidget">
		<div class="" id="feedWidgetTitle">
		<h2 class="enlinea"><?=$FEED_TITLE?></h2>
		<a href="<?=$URL_FEED?>">
			<img src="imagenes/feed-min.gif" alt="feed rss" border="0" /></a>
		</div>
	    <div class="feedWidgetLine"></div>
    	<div id="feedWidgetTabContent">
	<?
    // Mostramos los últimos 4 posts
    $rss->items = array_slice($rss->items, 0, 4);
    foreach ($rss->items as $item ) {
    $pubDate = date_i18n( get_option('date_format'), strtotime( $item['pubdate'] ) );
        echo '<div>';
            echo $pubDate .': <a href="' . wp_filter_kses($item['link']) . '">' . rss_clean_html(wp_specialchars($item['title'])) . '</a>';
        echo '</div>';
    }
    echo " </div><a style=\"color:white;text-decoration: underline;\" href=\"$URL_BLOG\">$URL_TITLE</a>    </div>";
 
}else{
?>
	<div style="display: block;" id="feedWidget">
		<div class="" id="feedWidgetTitle"><h2 class="enlinea"><?=$FEED_TITLE?></h2></div>
	    <div class="feedWidgetLine"></div>
    		<div id="feedWidgetTabContent">
    			<div>No hay Noticias</div>
    		</div>
    </div>
<?php
}
?>

Espero que les sea de utilidad

You can leave a response, or trackback from your own site.

6 Responses to “Cómo integrar los comentarios de un blog WordPress en una página web”

  1. Cómo integrar los comentarios de un blog Wordpress en una página web says:

    August 15th, 2010 at 5:36 pm

    […] Cómo integrar los comentarios de un blog WordPress en una página web deckerix.com/blog/como-integrar-los-comentarios-de-un-blog-w…  por aerious hace 1 segundos […]

  2. GASTON says:

    September 23rd, 2010 at 11:32 pm

    Hola! este archivo como se tiene q llamar?

    GRACIAS!

  3. GASTON says:

    September 23rd, 2010 at 11:33 pm

    el primero….
    ///////php
    $URL_BLOG = “http://todosloscaminosdesantiago.com/blog/general/noticias/”;
    $URL_FEED = “http://todosloscaminosdesantiago.com/blog/general/noticias/feed/”;
    $URL_TITLE = “Leer todas las Noticias del Camino de Santiago”;
    $FEED_TITLE = “Noticias del Camino de Santiago”;

    include “plantillas/noticias.php”;

    ?>

  4. deckerix says:

    September 24th, 2010 at 7:18 am

    no entiendo tu pregunta GASTON 🙂

  5. Aitor says:

    February 17th, 2011 at 2:18 am

    en primer lugar te doy las gracias por compartirlo.

    Copío el código tal está ahí, cada en su sitio, uno en raiz y el otro en la carpeta plantillas. ara hacer las pruebas ni siquiera pongo la Url del Feed del mío, y No sé por qué no me funciona…

    Ayúdame por favor.

    Gracias

  6. deckerix says:

    February 17th, 2011 at 7:46 am

    Aitor, si no me dices que error te da no podré ayudarte.
    Lo más seguro al haber copiado el código tal cual es que no tengas bien cargadas las APIS de WordPress. Las mias estaban en /blog

    Un saludo

Leave a Reply