Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/selenium/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Prestashop 普雷斯塔索普的胡克是什么?_Prestashop_Prestashop 1.7 - Fatal编程技术网

Prestashop 普雷斯塔索普的胡克是什么?

Prestashop 普雷斯塔索普的胡克是什么?,prestashop,prestashop-1.7,Prestashop,Prestashop 1.7,普雷斯塔索普的胡克是什么?它是如何工作的?任何人都可以用图形表示。我是PS的新手,我不知道它是如何工作的,也不知道如何在里面传递变量。有没有选择写钩子的技巧。在PrestaShop中,有两种钩子: Display-挂钩:您可以将其视为位置,您可以在其中放置设计元素,例如来自模块的设计元素。假设您希望在页脚中放置横幅。然后将该模块“移植”到displayFooter,或者选择使用所需挂钩的模块 动作-钩子:你可以把它们看作是你想要动作发生的时间。假设您想请求客户重新考虑是否从购物车中删除某个项目,

普雷斯塔索普的胡克是什么?它是如何工作的?任何人都可以用图形表示。我是PS的新手,我不知道它是如何工作的,也不知道如何在里面传递变量。有没有选择写钩子的技巧。

在PrestaShop中,有两种钩子:

  • Display
    -挂钩:您可以将其视为位置,您可以在其中放置设计元素,例如来自模块的设计元素。假设您希望在页脚中放置横幅。然后将该模块“移植”到
    displayFooter
    ,或者选择使用所需挂钩的模块
  • 动作
    -钩子:你可以把它们看作是你想要动作发生的时间。假设您想请求客户重新考虑是否从购物车中删除某个项目,然后在
    ActionObjectProductInventDeleteAfter
    中添加一个弹出窗口或其他内容,或者选择一个使用所需挂钩的模块
  • 如何在你说的模块中使用钩子?

    注册挂钩(大部分时间在安装过程中完成),如下所示:

    public function install()
    {
        return parent::install() 
        && $this->registerHook('displayFooter'); 
    }
    
    {hook h='displayFooter'}
    
    Hook::exec($hook_name, $hook_args);
    
    然后制作一个实际的钩子函数:

    public function hookDisplayFooter($params) {
        dump($params); // Gives an overview of some available params.  
        return 'Hello world';
    }
    
    最后,钩子在如下模板中执行:

    public function install()
    {
        return parent::install() 
        && $this->registerHook('displayFooter'); 
    }
    
    {hook h='displayFooter'}
    
    Hook::exec($hook_name, $hook_args);
    
    您还可以从控制器执行钩子,如下所示:

    public function install()
    {
        return parent::install() 
        && $this->registerHook('displayFooter'); 
    }
    
    {hook h='displayFooter'}
    
    Hook::exec($hook_name, $hook_args);
    
    更多信息可在PrestaShop DevDocs中找到:

    PrestaShop中的钩子处理主题开发。它们对于在主题中插入模块非常重要。您可以在PrestaShop官方文档中找到

    要创建自己的钩子,请转到主题的目录,例如/themes/classic/,并在templates/文件夹中选择必要的模板。例如,您可以选择位于/themes/classic/templates/\u partials/header.tpl的站点标题模板。并在{hook h='MyCustomNameHooks'}构造的帮助下,将钩子添加到模板的头:{hook h='mysocialistheader'}。您可以找到有关创建挂钩的详细信息


    如果您想知道如何在PrestaShop 1.7中使用自定义挂钩,请。我们在这里提供了视频指导,因此更容易理解如何管理挂钩。

    如果我的回答对您有帮助,您应该接受我的回答。谢谢