Estoy tratando de anular el archivo register.phtml en mi módulo, pero parece que hay algún problema de configuración que hace que Magento no pueda usar mi plantilla personalizada para anular la del módulo central. Revisé el código pero no puedo encontrar el problema. Alguien puede ayudar? Gracias por adelantado. module.xml:
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Module/etc/module.xsd">
<module name="Namespace_ModuleName" setup_version="0.0.2">
<sequence>
<module name="Magento_Customer"/>
</sequence>
</module>
</config>
customer_account_create.xml en Namespace \ ModuleName \ view \ frontend \ layout:
<?xml version="1.0"?>
<layout xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="urn:magento:framework:View/Layout/etc/layout_generic.xsd">
<referenceBlock name="customer_form_register">
<arguments>
<argument name="template" xsi:type="string">Namespace_ModuleName::form/register.phtml</argument>
</arguments>
</referenceBlock>
</layout>
composer.json:
{
"name": "namespace/module-modulename",
"description": "modulename",
"type": "magento2-module",
"version": "0.0.2",
"license": [
"OSL-3.0",
"AFL-3.0"
],
"require": {
"php": "~5.5.0|~5.6.0",
"magento/framework": "~0.42",
"magento/magento-composer-installer": "*",
"magento/module-customer": "*"
},
"extra": {
"map": [
[
"*",
"Namespace/ModuleName"
]
]
}
}
Utilice este código en su archivo de diseño en su lugar:
Reemplaza "diseño" con "página" y agrega la etiqueta del cuerpo
EDITAR: la segunda alternativa es eliminar el bloque original y agregar uno nuevo con la plantilla deseada
fuente
setTemplate
método, que luego encuentra la plantilla en el mismo módulo. ¡Una solución muy sucia pero lo único que funcionó para mí!Falta la etiqueta <body> después de la etiqueta <page>, intente:
fuente
Anular los métodos setTemplate funciona mejor para mí.
fuente
Sé que esto es viejo, pero si ayuda a alguien,
Este problema de github magento2 / issues / 3356 establece que el método de referencia y argumentos (mencionado en la pregunta) sufre un error en lugar del método obsoleto y de trabajo:
La documentación (Establecer una plantilla de bloque) no refleja el estado real de las cosas.
fuente