En una instalación limpia de Magento, la página de inicio se genera desde el CMS, por lo que si queremos modificar esta página y añadir nuestro propio contenido, bloques, productos, etc. tenemos que recurrir o bien al editor de páginas del CMS, donde tenemos dos opciones: editar el contenido con el editor Wysisyg o definir actualizaciones del layout en un textarea ‘dificil de manejar’ (mucho mejor un editor de texto normal y corriente).
Ninguna de las dos parece muy buena opción si lo que se quiere es tener control total sobre lo que aparece en la página de inicio, sobre todo si lo que queremos realizar se aleja un poco de lo ‘estándar’.
Para no utilizar el CMS como página de inicio, basta con realizar las siguientes modificaciones:
Copiar el fichero:
app/code/core/Mage/Core/controllers/IndexController.php
a su ubicación local, para no editar el core de Magento:
app/code/local/Mage/Core/controllers/IndexController.php
Ahora editamos el archivo y la función indexAction, para que quede de la siguiente forma:
class Mage_Core_IndexController extends Mage_Core_Controller_Front_Action { function indexAction() { $this->loadLayout(); $this->renderLayout(); } }
Finalmente vamos al administrador, a Sistema » Web » Páginas por defecto y borramos el campo Default Web URL, que por defecto indica cms.
Hecho esto, la página de inicio ya no será la definida en el CMS, sino la definida mediante el layout y los ficheros xml, y en particular aquellas zonas del layout que respondan a los manejadores siguientes:
core_index_index
Después de esto, sólo nos queda incluir en nuestro fichero local.xml la estructura de página que queramos…
Hey! Qué opinas sobre el artículo?