Jump to content

Edit History

Kosoca

Kosoca


faute de frappe

Bonjour Alexandre Carette,

 

Mon module s'appel :

chronos_accueil

et mon Front controller s'appel :

Accueil

je vous met mon code dans le post pour plus de precision :

Le fichier de création du module chronos_accueil.php

<?php


/**
* Verifier si la version de prestashop est bonne
*/
if (!defined('_PS_VERSION_')) {
  exit;
}

/**
 * constructeur du module d'accueil de la partie pro et particulier
 */
class Chronos_Accueil extends Module {

  public function __construct() {
    $this->name = 'chronos_accueil';
    $this->tab = 'front_office_features';
    $this->version = '1.0.0';
    $this->author = 'Chronos';
    $this->controllers = array('Accueil');
    $this->need_instance = 0;
    $this->ps_versions_compliancy = [
      'min' => '1.7',
      'max' => _PS_VERSION_
    ];
    $this->bootstrap = true;

    parent::__construct();

    $this->displayName = $this->l('Module accueil de chronos');
    $this->description = $this->l('Module agissant sur la partie accueil pro et particulier.');

    $this->confirmUninstall = $this->l('Êtes-vous sûr de vouloir désinstaller ce module ?');

    if (!Configuration::get('CHRONOS_ACCUEIL_PAGENAME')) {
        $this->warning = $this->l('Aucun nom fourni');
    }

  }


  /**
   * fonction pour installer le module
   */
  public function install() {

    if (Shop::isFeatureActive()) {
    Shop::setContext(Shop::CONTEXT_ALL);
    }

    if (!parent::install() ||
      !$this->registerHook('header') ||
      !Configuration::updateValue('CHRONOS_ACCUEIL_PAGENAME', 'Mentions légales')) {
        return false;
    }

    return true;

  }


  /**
   * fonction pour déinstaller le module
   */
  public function uninstall() {

    if (!parent::uninstall() ||
      !Configuration::deleteByName('CHRONOS_ACCUEIL_PAGENAME')) {
      return false;
    }

    return true;
  }

}

 

Le front controller Accueil.php

<?php

if (!defined('_PS_VERSION_'))
        exit;

class ChronosAccueilFrontController extends ModuleFrontController {

  public function initContent() {

        parent::initContent();

        $this->setTemplate('module:chronos_accueil/views/templates/front/accueil.tpl');
    }
}


 

Le fichier template smarty accueil.tpl

{extends file='page.tpl'}

{block name='page_header_container'}{/block}

{block name='page_content'}
	<p>Page d'accueil de mon site</p>
{/block}

 

 

Kosoca

Kosoca

Bonjour Alexandre Carette,

 

Mon module s'appel :

chronos_accueil

et mon Front controller s'appel :

AccueilChronosController

je vous met mon code dans le post pour plus de precision :

Le fichier de création du module chronos_accueil.php

<?php


/**
* Verifier si la version de prestashop est bonne
*/
if (!defined('_PS_VERSION_')) {
  exit;
}

/**
 * constructeur du module d'accueil de la partie pro et particulier
 */
class Chronos_Accueil extends Module {

  public function __construct() {
    $this->name = 'chronos_accueil';
    $this->tab = 'front_office_features';
    $this->version = '1.0.0';
    $this->author = 'Chronos';
    $this->controllers = array('Accueil');
    $this->need_instance = 0;
    $this->ps_versions_compliancy = [
      'min' => '1.7',
      'max' => _PS_VERSION_
    ];
    $this->bootstrap = true;

    parent::__construct();

    $this->displayName = $this->l('Module accueil de chronos');
    $this->description = $this->l('Module agissant sur la partie accueil pro et particulier.');

    $this->confirmUninstall = $this->l('Êtes-vous sûr de vouloir désinstaller ce module ?');

    if (!Configuration::get('CHRONOS_ACCUEIL_PAGENAME')) {
        $this->warning = $this->l('Aucun nom fourni');
    }

  }


  /**
   * fonction pour installer le module
   */
  public function install() {

    if (Shop::isFeatureActive()) {
    Shop::setContext(Shop::CONTEXT_ALL);
    }

    if (!parent::install() ||
      !$this->registerHook('header') ||
      !Configuration::updateValue('CHRONOS_ACCUEIL_PAGENAME', 'Mentions légales')) {
        return false;
    }

    return true;

  }


  /**
   * fonction pour déinstaller le module
   */
  public function uninstall() {

    if (!parent::uninstall() ||
      !Configuration::deleteByName('CHRONOS_ACCUEIL_PAGENAME')) {
      return false;
    }

    return true;
  }

}

 

Le front controller Accueil.php

<?php

if (!defined('_PS_VERSION_'))
        exit;

class ChronosAccueilFrontController extends ModuleFrontController {

  public function initContent() {

        parent::initContent();

        $this->setTemplate('module:chronos_accueil/views/templates/front/accueil.tpl');
    }
}


 

Le fichier template smarty accueil.tpl

{extends file='page.tpl'}

{block name='page_header_container'}{/block}

{block name='page_content'}
	<p>Page d'accueil de mon site</p>
{/block}

 

 

×
×
  • Create New...