Banner observatorio

Problema (bug) con Feed de joomla 1.6

Es muy importante que esté bien configurarda la sindicación de tu web , pues esto es una "antena" de tu web , además que los robots de los buscadores están "comodos" en este medio , ello ayuda al rastreo y posicionamineto de la web.

Icono Bug

Bien he comproblado un problema en joomla 1.6 con respecto a la sindicación (para los RSS y los Atom). Concretamente se trata que no funciona los feed cuando activamos las url amigables, pues no enlaza bien con el  elemento LINK (dentro de la cabecera )de tipo application/rss+xml y application/atom+xml.

 

 

 

por ejemplo:

codigo erroneo HTML generado:

  <link href="/saber-como/blog-seo.feed?type=rss</span><a href="view-source:http:/www.en-linea.eu/?format=feed&type=rss"><span>" rel="alternate" type="application/rss+xml" title="RSS 2.0" />
<link href="/saber-como/blog-seo.feed?type=rss</span><a href="view-source:http:/www.en-linea.eu/?format=feed&type=atom"><span>" rel="alternate" type="application/atom+xml" title="Atom 1.0" />

codigo correcto HTML generado:

<link href="</span>/?format=feed&type=rss<span>" rel="alternate" type="application/rss+xml" title="RSS 2.0" />
<link href="</span>/?format=feed&type=atom<span>" rel="alternate" type="application/atom+xml" title="Atom 1.0" />

Esto se debe a que cuando se llama al url y se le agrega el request para ir a el generador de feed da el resultado erroneo anteriormente descrito, yo he subsanado(más bien apañado) para las categorias el archivo view.html.php en el paht components/com_content/views/category.

codigo erroneo

// Add alternative feed link
if ($this->params->get('show_feed_link', 1) == 1)
{
$link    = '&format=feed&limitstart=';<br /> $attribs = array('type' => 'application/rss+xml', 'title' => 'RSS 2.0');
$this->document->addHeadLink(JRoute::_($link.'&type=rss'), 'alternate', 'rel', $attribs);
$attribs = array('type' => 'application/atom+xml', 'title' => 'Atom 1.0');
$this->document->addHeadLink(JRoute::_($link.'&type=atom'), 'alternate', 'rel', $attribs);
}

codígo arreglado (o apañado)

// Add alternative feed link
if ($this->params->get('show_feed_link', 1) == 1)
{
$link    = '$HTTP_SERVER_VARS['REQUEST_URI']';<br /> $attribs = array('type' => 'application/rss+xml', 'title' => 'RSS 2.0');
$this->document->$link.'?format=feed&type=rss', 'alternate', 'rel', $attribs);
$attribs = array('type' => 'application/atom+xml', 'title' => 'Atom 1.0');
$this->document->$link.'?format=feed&type=atom', 'alternate', 'rel', $attribs);
}
elemento de decoración