左列未出现在自定义页面/控制器上

时间:2016-07-05 08:54:52

标签: php prestashop prestashop-1.6

我在Prestashop 1.6中创建了一个自定义页面devis及其控制器,但我无法显示任何列。

控制器:

class DevisController extends FrontController
{
    public $php_self = 'devis';
    public $display_column_left = true;
    ...
}

在主题配置中,我的“Devis”页面出现,并且左栏被选中:

enter image description here

“显示与否”逻辑发生在FrontController.php的构造函数中:

if (isset($this->php_self) && is_object(Context::getContext()->theme)) {
        $columns = Context::getContext()->theme->hasColumns($this->php_self);

        // Don't use theme tables if not configured in DB
        if ($columns) {
            $this->display_column_left  = $columns['left_column'];  // FALSE : why ?
            $this->display_column_right = $columns['right_column'];
        }
    }

我可以通过$this->display_column_left = true强制显示列,但显然不是这样做的。

有人知道$columns['left_column']false的原因吗?

1 个答案:

答案 0 :(得分:0)

上海*吨...

正如@ julien-lachal所提到的,这个问题与商店层面有关。

这意味着我正在浏览仪表板作为“所有商店”。

通过选择所需的商店,主题设置中的左栏实际上已被禁用。

大问题简单修复......