我修改了默认的 prestashop 1.5 通讯模块,并对 IdentityController 进行了以下覆盖
$this->context->smarty->assign('newsletter', (int)Module::getInstanceByName('modifiednewsletter')->active);
因此,该复选框似乎可以通过“我的个人信息”帐户链接设置/取消订阅时事通讯。
一切正常,但ini_set("display_errors", 1);
我仍然在个人信息页面上收到以下 php 错误
Notice: Trying to get property of non-object in /var/www/prestashop/controllers/front/IdentityController.php on line 135 Call Stack: 0.0001 646712 1.
IdentityController.php 的第 135 行是
$this->context->smarty->assign('newsletter', (int)Module::getInstanceByName('blocknewsletter')->active);
当我注释掉该行时,错误消失了,但我真的不想弄乱核心文件,谁能告诉我如何通过覆盖文件“取消设置”这个变量?