Страница обслуживания prestashop custom css не работает - PullRequest
0 голосов
/ 17 марта 2020

я новичок ie в разработке модуля prestashop, я хочу создать модуль для отображения пользовательской страницы для страницы обслуживания, для этого я создал хук и добавил его в файл обслуживания моей темы tpl, когда я активен режим обслуживания html моей пользовательской страницы отображается нормально, но он не загружает ни файлы css, ни js, связанные с моим модулем, когда я проверяю страницу, она показывает, что он не загружает эти файлы, вот мой код

<?php
if (!defined('_PS_VERSION_')) {
    exit;
}
class Sd_Coming_Soon extends Module{
    public function __construct(){
        $this->name                  =   "sd_coming_soon";
        $this->author                =   "name";
        $this->version               =   "1.0.0";
        $this->bootstrap             =   true;
        parent::__construct();
        $this->displayName           =   $this->l("Sd Coming Soon page");
        $this->description           =   $this->l("This module will add Coming soon page with countdown");
        $this->ps_version_compliancy =   array("min" => "1.7", "max" => _PS_VERSION_);
    }
    public function install(){
        if (!parent::install())
            return false;
        if (!$this->registerHook('displayComingSoon') or !$this->registerHook('displayMaintenance'))
            return false;
        $this->registerHook('displayMaintenance');
        return true;       
   }
   public function uninstall(){
       if(!parent::uninstall())
            return false;
       return true;
   }
   public function hookDisplayComingSoon($params){


        return $this->display(__FILE__,'views/templates/hook/coming_soon.tpl');
   }
   public function hookDisplayMaintenance($params){    
        $this->context->controller->addCSS($this->_path.'views/css/coming_soon.css', 'all');
        $this->context->controller->addJs($this->_path.'views/js/coming_soon.js', 'all');
   }

}

, поэтому я пытаюсь добавить путь css и js, жестко запрограммированный в файл обслуживания tpl, ссылки отображаются на странице, когда я проверяю его, но он не работает, страница отображается только в необработанном виде html без каких-либо стилей

Ответы [ 2 ]

0 голосов
/ 17 марта 2020

Используйте правильный Hook

Зарегистрируйте Hook:

$this->registerHook('displayHeader')

Назовите ваши файлы

public function hookDisplayHeader()
{
    $this->context->controller->addJS($this->_path.'PATH.js');
    $this->context->controller->addCSS($this->_path.'PATH.css');
}

Пожалуйста помните, что вы должны переустановить свой модуль, чтобы зарегистрировать новый хук в Prestashop

0 голосов
/ 17 марта 2020

Добавьте их в шапку, например:

public function hookHeader()
{
    $this->context->controller->addJS($this->_path.'/views/js/front.js');
    $this->context->controller->addCSS($this->_path.'/views/css/front.css');
}
...