Jump to content

Mettre un .tpl en cache dans un FrontController et tester sa présence


Recommended Posts

Bonjour,

Je bloque sur ce problème depuis quelques jours...

Mon module affiche une page en FrontOffice après un lourd traitement en base de donnée. La page n'évoluant que très rarement, je souhaite tester sa présence dans le cache smarty.

Voici mon code avec ce que je souhaite faire :

class BlockPixoProPricesProPricesModuleFrontController extends ModuleFrontController
{
   public function __construct()
    {
        $this->auth = true;
        $this->authRedirection = urlencode(Context::getContext()->link->getModuleLink('blockpixoproprices', 'proprices', array()));
        parent::__construct();
    }

    public function setMedia()
    {
        parent::setMedia();
        $this->context->controller->registerStylesheet('modules-blockpixoproprices', 'modules/blockpixoproprices/views/css/proprices.css', ['media' => 'all', 'priority' => 50, 'inline' => false, 'attribute' => null]);
        $this->context->controller->registerJavascript('modules-blockpixoproprices','modules/blockpixoproprices/views/js/proprices.js',['position'=>'bottom','priority'=>150,'inline'=>false,'attribute'=>'none']);
    }

    public function initContent()
    {
        parent::initContent();
        if (MON TEMPLATE N'EST PAS EN CACHE)
        {
            ICI LE GROS APPEL A LA BASE DE DONNEE ET ENVOI DES VARIABLES A SMARTY
        }
        return $this->setTemplate('module:blockpixoproprices/views/templates/front/proprices.tpl');
    }

 

Quels est l'instruction à mettre à la place de "MON TEMPLATE N'EST PAS EN CACHE" afin de ne pas executer le gros appel à la base de donnée et afficher directement le .tpl stockée dans le cache smarty?

PS: je connais la méthode dans le cas d'un hook mais pas celle qu'il faut utiliser dans ce cas là (affichage d'une page en frontoffice).

Merci pour votre aide...

Edited by vins (see edit history)
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...