我需要在我的模块中的管理产品网格上为选定的产品创建操作。就像现在 presta 实施了产品组删除、复制、激活/停用。我首先尝试通过官方文档(https://devdocs.prestashop.com/1.7/development/components/grid/tutorials/work-with-bulk-actions/)为客户网格创建批量操作。
- 在我的模块类中的方法 install() 中注册钩子
$this->registerHook('actionCustomerGridDefinitionModifier')
- 将批量操作的钩子方法复制到我的模块类
/**
* Use hook to add Bulk action for subscribing multiple customers to newsletter
*/
public function hookActionCustomerGridDefinitionModifier(array $params)
{
// $params['definition'] is instance of \PrestaShop\PrestaShop\Core\Grid\Definition\GridDefinition
$params['definition']->getBulkActions()->add(
(new SubmitBulkAction('subscribe_newsletter'))
->setName('Subscribe newsletter')
->setOptions([
// in most cases submit action should be implemented by module
'submit_route' => 'admin_my_module_customers_bulk_subscribe_newsletter',
])
);
}
但不起作用,批量操作中没有显示任何新内容。
然后我尝试与产品相同:
- 在我的模块类中的方法 install() 中注册钩子
$this->registerHook('actionProductGridDefinitionModifier')
- 将批量操作的钩子方法复制到我的模块类
/**
* Use hook to add Bulk action for subscribing multiple customers to newsletter
*/
public function hookActionProductGridDefinitionModifier(array $params)
{
// $params['definition'] is instance of \PrestaShop\PrestaShop\Core\Grid\Definition\GridDefinition
$params['definition']->getBulkActions()->add(
(new SubmitBulkAction('subscribe_newsletter'))
->setName('Subscribe newsletter')
->setOptions([
// in most cases submit action should be implemented by module
'submit_route' => 'admin_my_module_customers_bulk_subscribe_newsletter',
])
);
}
但也没有任何事情发生。
我做错了什么?prestashop 开始使用模板切换到 twig 会不会是一个问题?