Joomla!: redifundir contenido web (III)
Analizando view.feed.php
Si generas las RSS desde la página principal, como hemos visto hasta ahora, posiblemente viendo el código fuente observes tres cosas que no te gustan mucho y que seguramente quieras cambiar:
- El link de tu página (en la página de tu feed) no redirecciona a la página principal de tu web.
- Te gustaría modificar el título y la descripción.
- Aparece un tag generator que seguro que no quieres compartir.
Sobre el título y la descripción ya hablé en otro artículo aunque en vez de usarlo en "vista destacados" (featured view) fue en vista categoría. Enlace: Título y descripción en las RSS
Solucionar el enlace a tu página
Si observas el código, el enlace a tu página, que corresponde al enlace de tu menú, es generado del siguiente modo en el archivo view.feed.php:
$document->link = JRoute::_('index.php?option=com_content&view=featured');
Si quieres que redirija a tu página principal, puedes borrar la redirección y dejarlo del siguiente modo:
$document->link = JRoute::_('');
Esto es lo que se conoce como hacer un hack al archivo. Si quieres hacer un redireccionamiento usando el archivo .htaccess en Apache puedes visitar el siguiente enlace: Redireccionar vista featured.
Solucionar el tag generator
Desde el archivo view.feed.php podemos modificar el tag generator. Puedes añadir el siguiente código:
$document->setGenerator('Lo que tu quieras');
Si pones caracteres especiales tendrás que codificarlos o usar la función utf8_encode:
$document->setGenerator(utf8_encode('Por la mañana usé la llave amarilla'));
Verás que el código fuente final será:
<?xml version="1.0" encoding="utf-8"?>
<!-- generator="Por la mañana usé la llave amarilla" -->
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
...
O para dejarlo vacío:
$document->setGenerator('');
En estos momentos ya sabemos generar nuestros RSS correctos con las novedades de nuestra página principal. Ahora debemos crear un icono o un enlace para que la gente pueda subscribirse, que veremos en el siguiente artículo.