1. Go to this page and download the library: Download presta-expert/module-helper library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
presta-expert / module-helper example snippets
/**
* Checking if module is executed in prestashop context
*/
if (!defined('_PS_VERSION_')) {
exit;
}
/**
* Loading composer autoload
*/
*/
public function __construct()
{
$this->name = 'mycustommodule';
$this->version = '1.5.2';
$this->author = 'Johnny Sins';
$this->tab = 'analytics_stats';
parent::__construct();
$this->displayName = $this->l('My custom module');
$this->description = $this->l('My custom module full description');
}
/**
* {@inheritdoc}
*
* Below configuration values will be automatically
* added on module installation
*
* Also below values will be automatically deleted
* on module uninstallation
*/
public function getConfiguration()
{
return array(
'MY_CUSTOM_CONFIG_1' => 'Lorem',
'MY_CUSTOM_CONFIG_2' => 'Lorem ipsum',
);
}
/**
* {@inheritdoc}
*
* Below hooks will be automatically registered on
* module installation without manually implementing
* registerHook
*
* All you have to do is implement your hook methods
* public function hookDisplayHeader(array $params)
*/
public function getHooks()
{
return array(
'displayHeader',
'displayBackOfficeHeader',
);
}
/**
* {@inheritdoc}
*
* Below queries will be automatically executed on
* module installation
*/
public function getInstallSql()
{
return array(
'CREATE TABLE `custom_table` (
id int,
value1 varchar(255),
value2 varchar(255)
);',
);
}
/**
* {@inheritdoc}
*
* Below queries will be automatically executed on
* module uninstallation
*/
public function getUninstallSql()
{
return array(
'DROP TABLE `custom_table`',
);
}
/**
* {@inheritdoc}
*
* Below tabs will be automatically added on module
* installation
*
* Also below tabs will be automatically deleted
* on module uninstall
*
* Keep in mind to keep the proper structure of
* the array
*/
public function getTabs()
{
return array(
array(
// Parent tab name (or null if your tab should be parent)
'parent' => 'AdminParentOrders',
// Your tab class name
'class' => 'AdminModule',
// Display name of tab (will be automatically used in translation $this->l())
'name' => 'Doing something',
),
);
}
/**
* {@inheritdoc}
*
* Below media will be automatically added in
* back office using displayBackOfficeHeader
*/
public function getBackOfficeMedia()
{
return array(
'/modules/mycustommodule/views/js/backoffice.js',
'/modules/mycustommodule/views/css/backoffice.css',
);
}
/**
* {@inheritdoc}
*
* Below media will be automatically added in
* front office using displayHeader
*/
public function getFrontOfficeMedia()
{
return array(
'/modules/mycustommodule/views/js/frontoffice.js',
'/modules/mycustommodule/views/css/frontoffice.css',
);
}
/**
* {@inheritdoc}
*
* IMPORTANT NOTE:
* Keep in mind to execute parent::hookDisplayHeader
* and parent::hookDisplayBackOfficeHeader when your
* module uses it to keep getFrontOfficeMedia() and
* getBackOfficeMedia() working.
*
* @return void
*/
public function hookDisplayBackOfficeHeader()
{
parent::hookDisplayBackOfficeHeader();
// Your hook placeholder to keep getBackOfficeMedia() working
}
/**
* {@inheritdoc}
*
* IMPORTANT NOTE:
* Keep in mind to execute parent::hookDisplayHeader
* and parent::hookDisplayBackOfficeHeader when your
* module uses it to keep getFrontOfficeMedia() and
* getBackOfficeMedia() working.
*
* @return void
*/
public function hookDisplayHeader()
{
parent::hookDisplayHeader();
// Your hook placeholder to keep getFrontOfficeMedia() working
}
}
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.