Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

Модуль "Автоматическое скрытие пустых категорий"


FeliksN

Recommended Posts

Купил у буржуев модуль скрытия пустых категорий, работать не хочет, собака. Обращался к ним за поддержкой, говорят что должен быть оригинальный файл от OpenCart (category.php) и просят доступ по ftp для решения проблемы (не хочется давать). Может вы подскажете, что нужно подкрутить?

Ссылка на модуль: http://www.opencart.com/index.php?route=extension/extension/info&extension_id=16011

Модуль работает через vQmod. При установке любого из вариантов скрытия категорий (а их 4) результат - сайт отображает белую страницу и в логе следующая ошибка:

2014-10-17 22:58:54 - PHP Notice:  Undefined variable: data in /home/p4push1/domains/4push.ru/public_html/vqmod/vqcache/vq2-catalog_controller_module_category.php on line 69

Код файла vq2-catalog_controller_module_category.php:

<?php  
class ControllerModuleCategory extends Controller {
	protected function index($setting) {
		$this->language->load('module/category');
		
    	$this->data['heading_title'] = $this->language->get('heading_title');
		
		if (isset($this->request->get['path'])) {
			$parts = explode('_', (string)$this->request->get['path']);
		} else {
			$parts = array();
		}
		
		if (isset($parts[0])) {
			$this->data['category_id'] = $parts[0];
		} else {
			$this->data['category_id'] = 0;
		}
		
		if (isset($parts[1])) {
			$this->data['child_id'] = $parts[1];
		} else {
			$this->data['child_id'] = 0;
		}
							
		$this->load->model('catalog/category');

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

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

		$categories = $this->model_catalog_category->getCategories(0);
		
		//Показывать или нет количество товаров
		$show_product_count = $this->config->get('config_product_count');

		foreach ($categories as $category) {
			//Будем вычислять кол-во товаров в категориях только если это кол-во надо показывать
			$PIDs=array();
			if ($show_product_count) {
				$res = $this->model_catalog_product->getTotalProductsID(array('filter_category_id' => $category['category_id']));
				foreach ($res as $key=>$value) {
					$PIDs[$value['product_id']]=$value['product_id'];
				}
			}

			$children_data = array();

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

			foreach ($children as $child) {
				//Будем вычислять кол-во товаров в категориях только если это кол-во надо показывать
				if ($show_product_count) {
					$data = array(
						'filter_category_id'  => $child['category_id'],
						'filter_sub_category' => true
					);

					$res = $this->model_catalog_product->getTotalProductsID($data);
					$product_total=count($res);
					foreach ($res as $key=>$value) {
						$PIDs[$value['product_id']]=$value['product_id'];
					}

//					$total += count($PIDs);
				}

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




			}

			$total = count($PIDs);

			  
    if($this->model_catalog_product->getTotalProducts(array('filter_category_id' => $category['category_id'], 'filter_sub_category' => true))>0){
		$this->data['categories'][] = array(
		'category_id' => $category['category_id'],
		'name'        => $category['name'] . ($this->config->get('config_product_count') ? ' (' . $total . ')' : ''),
		'children'    => $children_data,
		'href'        => $this->url->link('product/category', 'path=' . $category['category_id'])
		);		
    }				
    





		}
		
		if (file_exists(DIR_TEMPLATE . $this->config->get('config_template') . '/template/module/category.tpl')) {
			$this->template = $this->config->get('config_template') . '/template/module/category.tpl';
		} else {
			$this->template = 'default/template/module/category.tpl';
		}
		
		$this->render();
  	}

}
?>
Надіслати
Поділитися на інших сайтах


Ради вас никто модуль покупать для проверки не будет, вам нужно или загрузить купленный вами модуль сюда для тестов, или дождаться пока с отпуска повыходят местные телепаты, гадалки и шаманы с бубнами.

Надіслати
Поділитися на інших сайтах


Гість
Ця тема закрита для публікації повідомлень.
×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.