php - tutorial - Habilitar sugerencia de ruta de plantilla en las páginas de administración-Magento
magento rest api authentication (9)
Quiero habilitar las sugerencias de ruta de la plantilla en el panel de administración. Sé cómo hacerlo para la parte delantera, pero para la parte de atrás? De hecho, quiero editar el panel de administración.
Gracias por adelantado..
La característica no fue diseñada para ser utilizada en el administrador. Su configuración del sistema está configurada explícitamente para que solo le permita ver esto en el sitio web o en el nivel de la tienda, no en el nivel global.
Asumiendo que esto es solo por trabajo en un ambiente de desarrollo, el enfoque que tomaría sería anular la clase
Mage_Core_Block_Template
y anular (con una anulación de alias de clase, o un reemplazo local / de Mage) las getShowTemplateHints
método getShowTemplateHints
.
public function getShowTemplateHints()
{
//return false
return true;
}
// old method, here for demo purposes only. Don''t hack the core
// public function getShowTemplateHints()
// {
// if (is_null(self::$_showTemplateHints)) {
// self::$_showTemplateHints = Mage::getStoreConfig(''dev/debug/template_hints'')
// && Mage::helper(''core'')->isDevAllowed();
// self::$_showTemplateHintsBlocks = Mage::getStoreConfig(''dev/debug/template_hints_blocks'')
// && Mage::helper(''core'')->isDevAllowed();
// }
// return self::$_showTemplateHints;
// }
A continuación, puede cambiar manualmente getShowTemplateHints para que sea verdadero o falso si desea activar o desactivar la función o agregar la lógica adicional que desee.
No recomendaría que aplique este cambio al servidor de producción.
No creo que debas hacerlo demasiado difícil, hagámoslo fácil por pasos sencillos. Puede ver las instrucciones aquí sobre Cómo activar las sugerencias de ruta de la plantilla en Magento
Puede habilitar la plantilla y bloquear sugerencias de ruta en cada tienda (incluida la tienda de administración) configurándolas en la configuración de Magento. Para hacerlo, simplemente edite el archivo de configuración de su módulo config.xml
(que se inyecta en la configuración global de Magento).
Para habilitar la plantilla y bloquear las sugerencias de ruta en el área de administración, agréguela a su archivo config.xml
<config>
...
<stores>
<admin>
<dev>
<debug>
<template_hints>1</template_hints>
<template_hints_blocks>1</template_hints_blocks>
</debug>
</dev>
</admin>
</stores>
</config>
Para deshabilitar sugerencias de ruta, simplemente cambie a 0 o elimine el nodo.
Puede hacerlo cambiando la base de datos directamente. Si tiene algo como phpMyAdmin, esa es una buena forma de obtener acceso. Ingrese este SQL.
INSERT INTO `core_config_data` (`scope`, `scope_id`, `path`, `value`)
VALUES (''websites'', ''0'', ''dev/debug/template_hints'', ''1'');
Cuando haya terminado con las sugerencias de ruta, simplemente elimine el registro coincidente de core_config_data
O actualice el campo de value
a 0
lugar de eliminar todo el registro, probablemente será el último desde que lo acaba de agregar.
Puede usar la siguiente extensión para habilitar las sugerencias de ruta de la plantilla para frontend & backend de forma fácil y segura de una manera joomla:
http://www.magepsycho.com/easy-template-path-hints.html
Sé que es tarde, pero puedes hacerlo fácilmente de esta manera: simplemente cambia la configuración en el archivo de configuración www/app/code/core/Mage/Core/etc/system.xml
Establezca las sections>dev>debug>fields>template_hints>show_in_default
en 1
y establezca las sections>dev>debug>fields>template_hints_blocks>show_in_default
en 1
también
Una solución bastante práctica: modifique la función getShowTemplateHints()
definida en el archivo / app / code / core / Mage / Adminhtml / Block / Template.php como se muestra a continuación:
Para ejecutar la función siguiente: En su tipo de navegador, http://www.mymagentosite.com/?th=1&token=PHP
Puede ver sugerencias de plantillas y agregar nombres de bloque.
public function getShowTemplateHints()
{
if (is_null(self::$_showTemplateHints))
{
self::$_showTemplateHints = Mage::getStoreConfig(''dev/debug/template_hints'')
&& Mage::helper(''core'')->isDevAllowed();
self::$_showTemplateHintsBlocks = Mage::getStoreConfig(''dev/debug/template_hints_blocks'')
&& Mage::helper(''core'')->isDevAllowed();
}
// overwrite the template hint [SPECIALLY FOR SHOWING TEMPLATE PATH HINTS IN ADMIN]
$th = Mage::app()->getRequest()->getParam(''th'', false);
$token = Mage::app()->getRequest()->getParam(''token'', false);
if($th == 1 && $token == ''PHP''){
self::$_showTemplateHints = true; // for template path
self::$_showTemplateHintsBlocks = true; // block names
}
return self::$_showTemplateHints;
}
Vaya a su base de datos y simplemente ejecute esta consulta:
INSERT INTO core_config_data (scope, scope_id, path, value)
VALUES (''default'', 0, ''dev/debug/template_hints'', 1),
(''default'', 0, ''dev/debug/template_hints_blocks'', 1);
Para deshabilitarlos nuevamente, ejecute esta consulta:
UPDATE core_config_data set value = 0 where scope = ''default'' and scope_id = 0 and path =''dev/debug/template_hints''
Para habilitar nuevamente, ejecute esta consulta:
UPDATE core_config_data set value = 1 where scope = ''default'' and scope_id = 0 and path =''dev/debug/template_hints''
abra /app/etc/local.xml y agregue el siguiente código
<config>
...
<websites>
<admin>
<dev>
<debug>
<template_hints>1</template_hints>
<template_hints_blocks>1</template_hints_blocks>
</debug>
</dev>
</admin>
</websites>
</config>