Sobreescribir un bloque y un template en Magento2 (di.xml)

di.xml en Magento2

Otra de las novedades (o de las nuevas formas de hacer las cosas) en Magento2 es la inyección de dependencias. Para quienes no estén familiarizados con el patrón, algo de lectura introductoria, explicación de cómo opera en Magento y documentación oficial.

Ahora bien, vayamos a un ejemplo de la vida real, uno de esos con los cuales en más de una oportunidad nos vamos a chocar en el día a día: Sobreescribir un bloque.

Nuevamente voy a hacer uso del módulo Barbanet_SampleModule, y sólo a fines didácticos voy a modificar el footer de Magento2.

Entonces, dado que ayer creé mi theme Barbanet/SampleTheme, mi home hoy se ve así.

Homepage Magento2

Y el footer, en particular:

Footer en Magento2

Voy a aplicar dos modificaciones al mismo tiempo, pero una mediante el bloque que devuelve el string de copyright y la otra mediante el reemplazo del archivo phtml.

Sigue leyendo

Primeros pasos para crear un theme en Magento2

Definición de un theme en Magento2

No sólo aquellos que hagan backend deberán enloquecerse aprender a jugar con Magento2, el frontend también trae cambios, algunos buenos y otros… digamos… cuestionables.

Ayer veíamos cómo crear, para un módulo, un bloque y un template custom. Hoy la idea es dar otro pequeño paso y sentar las bases para nuestro primer theme.

Comenzaremos por crear, dentro de app/design/frontend el directorio del Vendor. En mi caso será Barbanet. A su vez, dentro de dicho directorio, crearemos el del theme, que en este ejemplo se llamara sampletheme.

Si miramos el path completo, mi nuevo theme estará ubicado en app/design/frontend/Barbanet/sampletheme

Ubicación de un theme custom en Magento2

Ahora que ya sabemos en dónde, vamos a empezar a armar nuestro theme.

Sigue leyendo

Crear un bloque y un template en Magento2

Bloque custom en Magento2

Continuando con la idea de familiarizarnos con Magento2 y entender un poco la transición, hoy toca agregarle a Barbanet_SampleModule su primer bloque custom junto a un template.

La intención principal no será crear funcionalidad, sino comenzar a entender cómo funciona y qué cambia o cómo se entiende para los que ya veníamos desarrollando para Magento.

Lo primero que había agregado al módulo era el controller para el frontend, pero hasta ahí sólo se mostraba el layout general de Magento.

Controller con ruta amigable para el usuario en Magento2

El siguiente paso será crear nuestro primer bloque custom y nuestro primer template para acompañar a nuestro controller.

El primer paso será nuestro bloque.

Sigue leyendo