Мой модуль не отображается на веб-интерфейсе, я следовал по этой ссылке doc.prestashop.com/display/PS15/Creating+a+PrestaShop+module для создания пользовательского модуля в prestashop 1.6. Я проверил положение, очистил и отключил кеш, удалил и переустановил модуль, но пока ничего не получалось. ps файл config.xml был сгенерирован автоматически.
вот мой код mymodule.php
<?php
if (!defined('_PS_VERSION_'))
exit;
class MyModule extends Module
{
public function __construct()
{
$this->name= 'mymodule';
$this->tab = 'front_office_features';
$this->version = '1.0';
$this->author = 'Zeeshan Abbas';
$this->need_instance = 0;
$this->ps_versions_compliancy = array('min' => '1.5','max' => '1.6');
$this->dependencies = array('blockcart');
parent::__construct();//it is not 1 it is L ok
$this->displayName = $this->l('My module');
$this->description = $this->l('Description of my module');
$this->confirmUninstall = $this->l('are you sure you want to uninstall?? ');
if (!Configuration::get('MYMODULE_NAME'))
$this->warning = $this->l('No name provided');
}
public function install() {
if (Shop::isFeatureActive())
Shop::setContext(Shop::CONTEXT_ALL);return parent::install() &&
$this->registerHook('leftColumn') &&
$this->registerHook('header') &&
Configuration::updateValue('MYMODULE_NAME','my friend');
}
public function uninstall()
{
if (!parent::uninstall() ||
!Configuration::deleteByName('MYMODULE_NAME'))
return false;
return true;
}
/*public function install()
{
if (parent::install() == false)
return false;
return true;
}*/}
?>
вот мой mymodule.tpl
<!-- Block mymodule -->
<div id="mymodule_block_left" class="block">
<h4>Welcome!</h4>
<div class="block_content">
<p>Hello,
{if isset($my_module_name) && $my_module_name}
{$my_module_name}
{else}
World
{/if}
!
</p>
<ul>
<li><a href="{$my_module_link}" title="Click this link">Click me!</a></li>
</ul>
</div>
</div>
<!-- /Block mymodule -->
hookDisplayHeader
а также hookLeftColumn
методы отсутствуют.
public function hookDisplayLeftColumn($params)
{
$this->context->smarty->assign(
array(
'my_module_name' => Configuration::get('MYMODULE_NAME'),
'my_module_link' => $this->context->link->getModuleLink('mymodule', 'display')
)
);
return $this->display(__FILE__, 'mymodule.tpl');
}
public function hookDisplayHeader()
{
$this->context->controller->addCSS($this->_path.'css/mymodule.css', 'all');
}
Других решений пока нет …