Joomla!: redifundir contenido web (II)
Mostrar el enlace de sindicación de la noticia
En el tutorial anterior vimos cómo crear una página de inicio con las últimas noticias y cómo crear un enlace de sindicación en el encabezado (head) de tu página:
<link title="RSS 2.0" type="application/rss+xml" rel="alternate" href="/index.php?format=feed&type=rss">
<link title="Atom 1.0" type="application/atom+xml" rel="alternate" href="/index.php?format=feed&type=atom">
Vimos que ese código sale cuando en un menú, en las opciones de integración, en el desplegable "sindicar el enlace" seleccionamos "mostrar":
Como ves en el desplegable, existe una opción: "usar el valor global".
Este valor global lo encuentras en el gestor de artículos -> icono opciones -> pestaña integración. Ahí puedes modificar este "usar valor global":
Viendo las imágenes puedes ver que podemos mostrar el texto de introducción o el texto completo. Yo te recomiendo que lo dejes en texto de introducción como ves en la imagen, así un usuario subscrito a tus noticias, enseguida ve el contenido, no tiene porqué leer una noticia entera que no le interesa y si cambia de parecer ya accederá al artículo en concreto.
Las opciones de integración se encuentran en los menús de archivos destacados y en los menús de categorías, en otros verás que no existe. En tus menús que enlacen a categorías prueba a modificar la opción "sindicar el enlace" y después en tu sitio tras acceder a dicho menú, observa el código fuente y verifica si ha sido añadido o eliminado el enlace de sindicación. Verás que si es una categoría padre con subcategorías y sin ningun artículo no aparecerá el enlace de sindicación. Esto es importante y no sé si puede ser un error.
Ahora ve al enlace de sindicación, yo lo hago desde Firefox. Observa el código fuente: vas a ver el formato XML que tienen las RSS.
¿Cómo crea nuestro Joomla! dicho archivo en formato XML?
Pues es muy sencillo de entender. Por ejemplo en la página de inicio que hemos creado, la hemos creado con archivos destacados y en Joomla! esa vista se llama: featured.Por este motivo, vamos a analizar dos archivos que se encuentran aquí: tu_sitio/components/com_content/views/featured y los archivos son:
- view.html.php
- view.feed.php
El primero de ellos, si lo abres, tiene una función que se ejecuta mientras se está preparando el documento y al final del todo verás el código que nos muestra los enlaces en el encabezado:
// Add feed links
if ($this->params->get('show_feed_link', 1)) {
$link = '&format=feed&limitstart=';
$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);
}
Por su parte, el archivo view.feed.php prepara los datos para crear el archivo xml y finalmente en tu_sitio/libraries/joomla/document/feed/renderer en el archivo rss.php se creará el archivo final XML.
En el siguiente artículo vamos a modificar alguna cosa del archivo view.feed.php.