Localizar rutas y nombres de ficheros de módulos en Prestashop

¿Os acordáis del módulo que nos permitía conocer la información de los módulos, como por ejemplo la ruta de los ficheros?

En esta ocasión, vamos hablar y poner un ejemplo, de cómo hacerlo (más simplificado) a nivel de código. (El módulo que estuvimos comentando el otro día es más completo)

El usuario Nemo de la Comunidad de Prestashop, nos proporciona un pequeño truco en un videotutorial en el idioma de Shakespeare que hemos pasado de forma transcrita al idioma de Cervantes.

Vamos a tocar clases originales, pero recordar que lo recomendable es siempre hacer un Override.

Editamos el fichero:

/classes/module/Module.php

Dentro de la función “display” ->  public function display($file, $template, $cache_id = null, $compile_id = null)

Y encima de:

return $result;

Añadimos el siguiente código:

if ($result && _PS_MODE_DEV_ === true) {
$tpl_path = $this->getTemplatePath($template);
$result = '<!-- INICIO ' .$tpl_path. ' -->'. $result. '<!-- FINAL'. $tpl_path.' -->';
}
Debug ficheros TPL de los módulos en Prestashop

Con esta línea:

if ($result && _PS_MODE_DEV_ === true)

Solo mostraremos esta información, si hemos habilitado el debug en Prestashop y si hemos obtenido un resultado.Recordar que para hablitar el debug en Prestashop 1.6, es en: /config/defines.inc.php cambiando el valor “false” de define(‘_PS_MODE_DEV_’, false); por “true“.

En esta línea:
$tpl_path = $this->getTemplatePath($template);

Obtenemos la ruta del fichero “*.tpl”.

En esta línea:

$result = '<!-- INICIO ' .$tpl_path. ' -->'. $result. '<!-- FINAL'. $tpl_path.' -->';

Guardamos resultado en la variable $result que se va usando a lo largo de la misma función y que retorna la función.

Ahora veremos que en el código fuente de la tienda, podemos localizar fácilmente los ficheros “.tpl” de los módulos. (En esta ocasión estamos viéndolo desde Inspeccionar Elemento en Chrome (Botón derecho ratón -> Inspeccionar elemento)

Documento construido bajo Prestashop 1.6.1.14

En Prestashop 1.7, directamente (y sin necesidad de modificar código) si habilitamos el modo depurador (modo debug) desde la pestaña Parámetros Avanzados -> Rendimiento 

Habilitar modo depuración en Prestashop 1.7
Habilitar modo depuración en Prestashop 1.7

Desde el mismo código fuente nos salta la ruta de los “tpls” de los módulos…

Ficheros TPL de los módulos en Prestashop 1.7
Print Friendly, PDF & Email
Hosting Prestashop

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *