页面特定的产品模板opencart 2.0.1.1

时间:2015-03-09 17:27:17

标签: css templates switch-statement opencart2.x

我想使用“location”字段为opencart 2.0.1.1创建特定于页面的模板文件。 我想知道这可以与seo url一起使用 我在header.php的底部找到了opencart 2.0.1.1

//针对特定页面的css

    if (isset($this->request->get['route'])) {
        if (isset($this->request->get['product_id'])) {
            $class = '-' . $this->request->get['product_id'];
        } elseif (isset($this->request->get['path'])) {
            $class = '-' . $this->request->get['path'];
        } elseif (isset($this->request->get['manufacturer_id'])) {
            $class = '-' . $this->request->get['manufacturer_id'];
        } else {
            $class = '';
        }

        $data['class'] = str_replace('/', '-', $this->request->get['route']) . $class;
    } else {
        $data['class'] = 'common-home';
    }

    if (file_exists(DIR_TEMPLATE . $this->config->get('config_template') . '/template/common/header.tpl')) {
        return $this->load->view($this->config->get('config_template') . '/template/common/header.tpl', $data);
    } else {
        return $this->load->view('default/template/common/header.tpl', $data);
    }

我认为这只是页面特定css的代码结构,我只想更改页面特定的.tpl文件。 我想用开关控制方法, 我将为不同的产品使用至少5个模板。 下面这个例子来自opencart 1.5x。会是完美的

OpenCart - View alternate product template based on arbitrary product field

1 个答案:

答案 0 :(得分:0)

花了很长时间,但解决这个问题的是其他人使用“免费”的代码

if (file_exists(DIR_TEMPLATE . $this->config->get('config_template') . '/template/product/product_'.$product_id.'.tpl')) {
    $this->response->setOutput($this->load->view($this->config->get('config_template') . '/template/product/product_'.$product_id.'.tpl', $data));

} elseif (file_exists(DIR_TEMPLATE . $this->config->get('config_template') . '/template/product/product.tpl')) {
                $this->response->setOutput($this->load->view($this->config->get('config_template') . '/template/product/product.tpl', $data));
} else {
    $this->response->setOutput($this->load->view('default/template/product/product.tpl', $data));
}

/ *说明: 1.代码将根据ID搜索特定模板。例如:product_18.tpl。 2.如果特定模板不可用,Opencart将使用活动主题的通用模板(product.tpl)。 3.如果特定主题的模板不可用,Opencart将使用默认主题的模板。 * /

对于使用产品tpl add / product _ *

的VQ mod