Conocer la ruta al template actual de joomla desde componentes, módulos o plugins

Un problema al que me he enfrentado en varia ocasiones, es la la reutilización de recursos disponibles en la plantilla actual de joomla, desde otras extensiones.

Se puede hacer de una manera estática utilizando el nombre de la plantilla, pero también podemos realizarlo de una forma dinamica, para que joomla coja el recurso de la plantilla que se esta utilizando en ese momento.

Acceder a los recursos (imageness, css, js, etc) de una plantilla cuando estamos dentro de ella es muy sencillo, ya que podemos acceder a su nombre de forma directa con el siguiente código:

<?php echo $this->template; ?>

Podemos acceder a las propiedades disponibles de nuestra plantillas a través de “$this” cuando estamos trabajando sobre ella. Pero no podemos acceder a ellas cuando estamos en cualquier otra extensión.

Sin embargo joomla nos provee de otras herramientas para tal fin. Podemos conseguir la ruta base a traves de la clase “JURI”. Y además podemos acceder al nombre de la plantilla actual, accediento al método “getTemplate” de la aplicación cómo se muestra a continuación:

<?php
    $app = JFactory::getApplication();
    $templateDir = JURI::base() . 'templates/' . $app->getTemplate();

Con este sencillo código, podemos utilizar recursos de la plantilla actual desde cualquier extension de nuestro joomla.

Esta entrada fue publicada en Componentes. Guarda el enlace permanente.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s