在PS_CONFIGURATION中初始化一个常量变量。

问题描述 投票:1回答:1

其实我的问题面临着一个误区,就是关于 运作的prestashop特别是由于 差劲 解释的文档。事实上,最终的想法是创建一个在前端可见的手风琴,并通过后台的表单提供所有必要的参数。

我咨询了 起步 文档,并取得成功,我的问题是关于表的变量 PS_CONFIGURATION. 用文档中的例子,变量MY_MODULENAME什么时候初始化?我想把一个变量输入到表单中,但是当我在显示表单方法中输入每个变量的名称时,我遇到了一个错误,返回undefined。我被告知变量在安装过程中初始化了,但在定期卸载重装模块后,没有任何变化,所以我把所有的变量都放在了 安装()getContent() 方法。

所以我的问题是。在主类的哪个部分初始化了所有必要的变量? 我已经知道,我们必须使用 !"Configuration::updateValue()),以便以后在表格中使用它们,并在tpl文件中用smarty转录它们。?

php prestashop prestashop-1.7
1个回答
1
投票

我不知道我是否理解你的问题,但也许这将帮助你。

getContent() 函数生成在后台显示的内容。这是你建立表单以显示和获取选项的地方。

当表单被提交时,类似这样的东西应该可以用来保存变量。

if (Tools::isSubmit($this->name)) {
    // process the submitted data 
}

install() 函数主要是用来注册钩子和创建数据库,而不是像 uninstall() 应该可以删除这些数据,从而实现干净的卸载。

在前端,你依赖于钩子,直到钩子被调用,你定义的任何变量都不会出现在模板中,所以可能如果你看到一个未定义的通知,那么你正在试图访问变量,但仍然没有分配。

如果你要为你的网站或某个特定的客户建立一个模块,你不想依赖钩子,你可以在头钩子中分配变量,然后你应该能够在tpls的任何部分使用。

如果你想建立一个商业模块,那么你必须依赖钩子。

我希望这能帮助你

© www.soinside.com 2019 - 2024. All rights reserved.