首页 > 解决方案 > 将现有模块添加到自定义树枝

问题描述

我的任务是为我的雇主定制一个 Opencart 网站,我对它完全陌生。为了满足设计要求,我需要创建一个具有单个背景图像的 div,并包含一个页脚和一个品牌横幅。

通过更改 footer.php 视图,我可以轻松地自定义页脚。但我不知道如何将特定的现有模块添加到我的树枝中。我在谷歌上搜索了很多不同的短语,但我只找到了有关如何在管理员中自定义的内容。

通过查看代码,我可以从其他控制器/视图中看到,可以像这样加载子控制器

$data['banner'] = $this->load->controller('mybannermodule');

然后像这样插入树枝

{{ banner }}

但我不知道如何为我所追求的特定横幅指定控制器名称(它是显示品牌轮播的标准横幅) - 我一直在查看其他控制器,但我找不到一个这似乎是麸皮的旋转木马......我认为我对您可以在管理员中添加/编辑的模块与代码中的控制器和视图之间的关系感到困惑,这无济于事。

任何人都可以帮助我朝正确的方向轻推,或者让我知道我是否只是错误地接近这一切......

谢谢

标签: opencart-3

解决方案


你想让它简单地显示来自管理端设置的横幅的图像吗?

如果是这样,我会简单地像我的控制器一样

$results = $this->model_design_banner->getBanner($setting['banner_id']);

    foreach ($results as $result) {
        if (is_file(DIR_IMAGE . $result['image'])) {
            $data['banners'][] = array(
                'title' => $result['title'],
                'link'  => $result['link'],
                'image' => $this->model_tool_image->resize($result['image'], $setting['width'], $setting['height'])
            );
        }
    }

然后我会简单地从树枝上调用 $result

您需要指定横幅的 ID


推荐阅读