是否可以在Prestashop中的项目列表中添加消息



我已经构建了我的模块,并制作了一个AdminController,它可以通过创建/更新/删除/查看来列出表中的项目。

在列表页面中,我想在breadcrumb之后,但在表之前添加一条消息。

我看到有一个钩子可用:"displayAdminListBefore"和一个扩展"override_header"的块,但我不知道如何使其工作!

有人能给我指正确的方向吗?

您可以简单地将模块添加到displayAdminListBefore挂钩中。

首先使用安装功能将模块挂到此挂钩:
public function install() { if (!parent::install() || !$this->registerHook('displayAdminListBefore')) return false; return true; }

然后创建钩子函数,如下所示:
public function hookDisplayAdminListBefore($params) { return ' <div class="bootstrap"> <div class="alert alert-success"> <button data-dismiss="alert" class="close" type="button">×</button> Add your text here </div> </div> '; }

或者,您也可以使用.tpl:

public function hookDisplayAdminListBefore($params) { $this->smarty->assign(array( 'first_var' => $first_var, 'second_var' => $second_var', )); return $this->display(__FILE__, 'views/templates/admin/listbefore.tpl'); }


对您来说,最好的方法是覆盖list_header.tpl并使用override_header挂钩。

为此,请在modules/your_module/views/templates/admin/your_module/helpers/list/list_header.tpl 中创建一个新文件list_header.tpl

在此文件中复制以下代码:
{extends file="helpers/list/list_header.tpl"} {block name="override_header"} Your text {$your_var} {/block}

必须在控制器中的函数renderList():
中定义$your_var$this->context->smarty->assign( array( 'your_var' => 'your_var_value' ) );

相关内容

  • 没有找到相关文章

最新更新