2016-11-14 6 views
2

Ich habe gerade die neue Version von Presashop (1.7.0) entdeckt.Prestashop 1.7 - überschreiben Homeslider-Modul-Controller (HookdisplayHeader Javascript)

Ich möchte ein anderes Javascript als das standardmäßig vom Homeslider-Modul vorgeschlagene verwenden.

class Ps_ImageSlider extends Module implements WidgetInterface 
{ 
    public function hookdisplayHeader($params) 
    { 
     $this->context->controller->registerStylesheet('modules-homeslider', 'modules/'.$this->name.'/css/homeslider.css', ['media' => 'all', 'priority' => 150]); 
     $this->context->controller->registerJavascript('modules-responsiveslides', 'modules/'.$this->name.'/js/responsiveslides.min.js', ['position' => 'bottom', 'priority' => 150]); 
     $this->context->controller->registerJavascript('modules-homeslider', 'modules/'.$this->name.'/js/homeslider.js', ['position' => 'bottom', 'priority' => 150]); 
    } 
} 

Allerdings kann ich es in meinem Thema nicht überladen!

Haben Sie eine Prozedur, um mir vorzuschlagen?

Danke.

+0

Willkommen bei SO, bitte posten Sie etwas von Ihrem Code, da es einfacher ist, Ihnen zu helfen. Versuchen Sie, nur den für Ihr Problem relevanten Code zu veröffentlichen. – miltonb

Antwort

3

ich bin es wieder!

Daher zu dem Stamm von Prestashop gibt es eine Datei, die aufgerufen wird: "./override/modules". Wir haben nur einen Ordner „ps_imageslider“ und eine Datei „ps_imageslider.php“ hinzuzufügen, und geben Sie dann den folgenden Code ein:

<?php 
class Ps_ImageSliderOverride extends Ps_ImageSlider{ 
    public function hookdisplayHeader($params) 
    { 
     $this->context->controller->registerStylesheet('modules-homeslider', 'modules/'.$this->name.'/css/homeslider.css', ['media' => 'all', 'priority' => 150]); 
     $this->context->controller->registerJavascript('modules-YOUR_JS', 'modules/'.$this->name.'/js/YOUR_JS.js', ['position' => 'bottom', 'priority' => 150]); 
     $this->context->controller->registerJavascript('modules-homeslider', 'modules/'.$this->name.'/js/homeslider.js', ['position' => 'bottom', 'priority' => 150]); 
    } 
} 

Schließlich haben Sie den Cache zu leeren.

Sorry für mein Englisch (ich bin Französisch xD).

Bis bald!

Verwandte Themen