Prestashop:自定义模块未在后台显示

时间:2013-02-06 13:57:58

标签: prestashop

我想在prestashop中创建一个自定义模块,但它不会显示在后台的模块选项卡中。

我创建了一个非常基本的测试模块,但即使这样也不会出现在后台。

我在文件夹中有一个text.php文件:modules / test 这是文件的代码:

<?php

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

class Test extends Module
{
    public function __construct()
    {
        parent::__construct();  

        $this->name = 'Test';
        $this->tab = 'Test';
        $this->version = 1.0;
        $this->author = 'Test';
        $this->need_instance = 0;

        $this->displayName = 'TEST';
        $this->description = 'TEST';
    }

    public function install()
    {
        return (parent::install());
    }
}

据我了解,这足以让基本模块显示在后台的模块选项卡中。

知道可能出现什么问题吗?

3 个答案:

答案 0 :(得分:2)

在您的测试模块中,可能有以下几个原因:

  1. 你需要让你的文件命名与文件夹相同,所以它应该是modules / test文件夹中的test.php

  2. $ this-&gt; name ='test';测试应该是Prestashop official guide中所述的小写 'name'属性。作为内部标识符,因此使其唯一,没有特殊字符或空格,并保持小写。

答案 1 :(得分:0)

注意parent :: __ construct();

的位置

我认为您在设置足够的信息之前正在呼叫父母。我还建议为您的测试模块使用不同的名称,这不是通用的。

<?php

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

class Test extends Module
{
    public function __construct()
    {

        $this->name = 'Test';
        $this->tab = 'Test';
        $this->version = 1.0;
        $this->author = 'Test';
        $this->need_instance = 0;

        parent::__construct();  

        $this->displayName = 'TEST';
        $this->description = 'TEST';
    }

    public function install()
    {
        return (parent::install());
    }
}

答案 2 :(得分:0)

您使用的是什么版本的PS?如果&lt; 1.5,几天前似乎发布了一个稳定而且漏洞较少的1.4.10。 我在我的网站Panapaná(http://www.panapana.com.br)上使用1.4.10,当我使用1.4.8.2时遇到了类似的问题。迁移到1.4.10后,此问题不再存在。