vqmod背景图像更改在opencart中引发php通知

vqmod背景图像更改在opencart中引发php通知,php,opencart,vqmod,Php,Opencart,Vqmod,我在vqmod xml文件夹中安装了background\u image.xml,以更改opencart中的背景图像。这个插件工作得很好,但是在页眉处添加了一个通知 Notice: Undefined variable: server in C:\wamp\www\opencart\vqmod\vqcache\vq2-catalog_controller_common_header.php on line 54 这是插件链接: 我还尝试了错误报告(0),但没有结果。下面是vqmod\vqca

我在vqmod xml文件夹中安装了
background\u image.xml
,以更改opencart中的背景图像。这个插件工作得很好,但是在页眉处添加了一个通知

Notice: Undefined variable: server in C:\wamp\www\opencart\vqmod\vqcache\vq2-catalog_controller_common_header.php on line 54
这是插件链接:

我还尝试了
错误报告(0)
,但没有结果。下面是
vqmod\vqcache\vq2-catalog\u controller\u common\u header.php的代码

class ControllerCommonHeader extends Controller {
    protected function index() {
        $this->data['title'] = $this->document->getTitle();

        if (isset($this->request->server['HTTPS']) && (($this->request->server['HTTPS'] == 'on') || ($this->request->server['HTTPS'] == '1'))) {
            $this->data['base'] = $this->config->get('config_ssl');
        } else {
            $this->data['base'] = $this->config->get('config_url');
        }

        $this->data['description'] = $this->document->getDescription();
        $this->data['keywords'] = $this->document->getKeywords();
        $this->data['links'] = $this->document->getLinks();  
        $this->data['styles'] = $this->document->getStyles();
        $this->data['scripts'] = $this->document->getScripts();
        $this->data['lang'] = $this->language->get('code');
        $this->data['direction'] = $this->language->get('direction');
        $this->data['google_analytics'] = html_entity_decode($this->config->get('config_google_analytics'), ENT_QUOTES, 'UTF-8');

        // Whos Online
        if ($this->config->get('config_customer_online')) {
            $this->load->model('tool/online');

            if (isset($this->request->server['REMOTE_ADDR'])) {
                $ip = $this->request->server['REMOTE_ADDR'];    
            } else {
                $ip = ''; 
            }

            if (isset($this->request->server['HTTP_HOST']) && isset($this->request->server['REQUEST_URI'])) {
                $url = 'http://' . $this->request->server['HTTP_HOST'] . $this->request->server['REQUEST_URI']; 
            } else {
                $url = '';
            }

            if (isset($this->request->server['HTTP_REFERER'])) {
                $referer = $this->request->server['HTTP_REFERER'];  
            } else {
                $referer = '';
            }

            $this->model_tool_online->whosonline($ip, $this->customer->getId(), $url, $referer);
        }

                if ($this->config->get('config_position')) {
            $this->data['position'] = $this->config->get('config_position');
        } else {
            $this->data['position'] = '';
        }

        if ($this->config->get('config_backgroundimage') && file_exists(DIR_IMAGE . $this->config->get('config_backgroundimage'))) {
            $this->data['backgroundimage'] = $server . 'image/' . $this->config->get('config_backgroundimage');
        } else {
            $this->data['backgroundimage'] = '';
        }
        $this->language->load('common/header');

        if (isset($this->request->server['HTTPS']) && (($this->request->server['HTTPS'] == 'on') || ($this->request->server['HTTPS'] == '1'))) {
            $server = HTTPS_IMAGE;
        } else {
            $server = HTTP_IMAGE;
        }   

        if ($this->config->get('config_icon') && file_exists(DIR_IMAGE . $this->config->get('config_icon'))) {
            $this->data['icon'] = $server . $this->config->get('config_icon');
        } else {
            $this->data['icon'] = '';
        }

        $this->data['name'] = $this->config->get('config_name');

        if ($this->config->get('config_logo') && file_exists(DIR_IMAGE . $this->config->get('config_logo'))) {
            $this->data['logo'] = $server . $this->config->get('config_logo');
        } else {
            $this->data['logo'] = '';
        }

        $this->data['text_home'] = $this->language->get('text_home');
        $this->data['text_wishlist'] = sprintf($this->language->get('text_wishlist'), (isset($this->session->data['wishlist']) ? count($this->session->data['wishlist']) : 0));
        $this->data['text_shopping_cart'] = $this->language->get('text_shopping_cart');
        $this->data['text_search'] = $this->language->get('text_search');
        $this->data['text_welcome'] = sprintf($this->language->get('text_welcome'), $this->url->link('account/login', '', 'SSL'), $this->url->link('account/register', '', 'SSL'));
        $this->data['text_logged'] = sprintf($this->language->get('text_logged'), $this->url->link('account/account', '', 'SSL'), $this->customer->getFirstName(), $this->url->link('account/logout', '', 'SSL'));
        $this->data['text_account'] = $this->language->get('text_account');
        $this->data['text_checkout'] = $this->language->get('text_checkout');

        $this->data['home'] = $this->url->link('common/home');
        $this->data['wishlist'] = $this->url->link('account/wishlist', '', 'SSL');
        $this->data['logged'] = $this->customer->isLogged();
        $this->data['account'] = $this->url->link('account/account', '', 'SSL');
        $this->data['shopping_cart'] = $this->url->link('checkout/cart');
        $this->data['checkout'] = $this->url->link('checkout/checkout', '', 'SSL');

        if (isset($this->request->get['filter_name'])) {
            $this->data['filter_name'] = $this->request->get['filter_name'];
        } else {
            $this->data['filter_name'] = '';
        }

        // Menu
        $this->load->model('catalog/category');

        $this->load->model('catalog/product');

        $this->data['categories'] = array();

        $categories = array();

        foreach ($categories as $category) {
            if ($category['top']) {
                $children_data = array();

                $children = $this->model_catalog_category->getCategories($category['category_id']);

                foreach ($children as $child) {
                    $data = array(
                        'filter_category_id'  => $child['category_id'],
                        'filter_sub_category' => true
                    );

                    $product_total = $this->model_catalog_product->getTotalProducts($data);

                    $children_data[] = array(
                        'name'  => $child['name'] . ($this->config->get('config_product_count') ? ' (' . $product_total . ')' : ''),
                        'href'  => $this->url->link('product/category', 'path=' . $category['category_id'] . '_' . $child['category_id'])   
                    );                      
                }

                // Level 1
                $this->data['categories'][] = array(
                    'name'     => $category['name'],
                    'children' => $children_data,
                    'column'   => $category['column'] ? $category['column'] : 1,
                    'href'     => $this->url->link('product/category', 'path=' . $category['category_id'])
                );
            }
        }

        $this->children = array(
            'module/language',
'module/supermenu',
            'module/supermenu_settings',
            'module/currency',
            'module/cart'
        );

$this->data['categories'] = array();
        if (file_exists(DIR_TEMPLATE . $this->config->get('config_template') . '/template/common/header.tpl')) {
            $this->template = $this->config->get('config_template') . '/template/common/header.tpl';
        } else {
            $this->template = 'default/template/common/header.tpl';
        }

        $this->render();
    }   
}

有人能帮我解决这个问题吗?

问题是-在默认的opencart中,
catalog/controller/common/header.php的开头存在以下代码行(第6行):

在您的情况下,上述代码行被删除。请检查文件
vqmod\vqcache\vq2-catalog\u controller\u common\u header.php
,并进行必要的更改以返回上述代码行。如果您正在使用更多vqmod文件,请同时检查它们

一个简单的修复方法是更改(可能在xml文件中):


$this->data['backgroundimage']=$server'图像/'$这个->配置->获取('config_backgroundimage')

$this->data['backgroundimage']=$this->data['base']图像/'$这个->配置->获取('config_backgroundimage')


祝你今天愉快

$this->data['base]=$server-这是引发错误的行吗?
$this->data['backgroundimage']=$server'图像/'$这个->配置->获取('config_backgroundimage')这行抛出错误这段代码也处于类似于
if($this->config->get('config\u backgroundimage')&&file\u exists(DIR\u IMAGE.$this->config->get('config\u backgroundimage'))的if条件下
很抱歉地通知您,上面的代码存在于两个文件中,我的意思是
vqmod\vqcache\vq2-catalog\u controller\u common\u header.php
catalog/controller/common/header.php
您能用
vqmod\vqcache\vq2-catalog\u controller\u common\u header.php
开头的代码更新问题吗
如果($this->config->get('config_backgroundimage')和&file_存在(DIR_IMAGE.$this->config->get('config_backgroundimage'))
。需要注意的两件事:1.粘贴的代码中不存在我提到的代码。请仔细检查。2.
$server
变量在使用之前已使用。
    if (isset($this->request->server['HTTPS']) && (($this->request->server['HTTPS'] == 'on') || ($this->request->server['HTTPS'] == '1'))) {
        $server = $this->config->get('config_ssl');
    } else {
        $server = $this->config->get('config_url');
    }