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

Контроллер левого меню в openCart


Recommended Posts

Вопрос знатокам! после того как были перелопачены все контроллеры, он на конец-то нашёлся.. контроллер по пути /www/happyhome.ru/catalog/controller/extension/module/catalog.php (левое меню) что самое интересное не работает от этого адреса, хоть файл удали, но, зато спокойно себе функционирует и вносятся любые правки с /www/happyhome.ru/system/storage/modification/catalog/controller/extension/module/catalog.php в общем вопрос однозначный, как это дело исправить...? есть какие-то варианты

 

 

Конструкция: /www/happyhome.ru/system/storage/modification/catalog/controller/extension/module/catalog.php

                $children_data[] = array(
                  'category_id' => $child['category_id'],
                  'name'        => $child['name'],
                  'children2'    => $children_data_level2,
                  'href'        => $this->url->link('product/category', 'path=' . $category['category_id'] . '_' . $child['category_id']) 
                ); 

Конструкция:  /www/happyhome.ru/catalog/controller/extension/module/catalog.php

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

 

12121212.png

Змінено користувачем userAT
Надіслати
Поділитися на інших сайтах


у вас работает какой-то модификатор (читайте про OCMOD), который делает вот что:

берет стандартный файл.

вносит в него изменения

сохраняет во временный файл с таким же названием в папке sytem/storage

этот временный файл и используется при работе сайта.

этот файл существует неизменным до тех пор, пока не очистится кеш модификаторов

или пока кеш модификаторов не будет обновлен.

 

Если вы вносите изменения в исходный файл, то необходимо обновить модификаторы.

тогда процесс модификации будет повторен с уже измененным файлом. 

Змінено користувачем jaffagold
Надіслати
Поділитися на інших сайтах


14 часов назад, jaffagold сказал:

у вас работает какой-то модификатор (читайте про OCMOD), который делает вот что:

берет стандартный файл.

вносит в него изменения

сохраняет во временный файл с таким же названием в папке sytem/storage

этот временный файл и используется при работе сайта.

этот файл существует неизменным до тех пор, пока не очистится кеш модификаторов

или пока кеш модификаторов не будет обновлен.

 

Если вы вносите изменения в исходный файл, то необходимо обновить модификаторы.

тогда процесс модификации будет повторен с уже измененным файлом. 

Здравствуйте, спасибо за развернутый ответ, но в том то и дело модификаторы я обновляю, как и чищю кэш по пути /www/happyhome.ru/system/storage/cache/ 

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


9 минут назад, userAT сказал:

как и чищю кэш по пути /www/happyhome.ru/system/storage/cache/

system\storage\modification

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

Откройте эту папку и смотрите в ней тот файл в который вносите правки, есть ли они там.

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

$children_data[] = array(
'category_id' => $child['category_id'],
'name' => $child['name'],
'children2' => $children_data_level2,
'href' => $this->url->link('product/category', 'path=' . $category['category_id'] . '_' . $child['category_id'])
);
 
в том то и дело что такой структуры в оригинальном файле нет..
Надіслати
Поділитися на інших сайтах


Вы же сами написали в своем первом сообщении

/www/happyhome.ru/system/storage/modification/catalog/controller/extension/module/catalog.php 

Это и есть временный модифицированный файл.

Чтобы не лазить по папкам используйте средства опенкарт

Дополнения- Менеджер дополнений

Кнопки в правом верхнем углу

Сброс- стирает временные модифицированные файлы

Обновить- обновляет временные файлы.

На этой же странице вы увидите список модификаторов, установленных в систему штатными средствами.

Кнопку удалить использовать, только когда вы совсем хотите удалить сам модификатор из системы.

 

Чтобы понять, кто добавляет, возьмите короткий характерный кусок кода и поиском текста пройдитесь

сначала по папке system

а потом в базе данных в таблице oc_modification

столбец xml

 

Змінено користувачем jaffagold
Надіслати
Поділитися на інших сайтах


<?php
class ControllerExtensionModuleCategory extends Controller {
	public function index() {
		$this->load->language('extension/module/category');

		$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])) {
			$data['category_id'] = $parts[0];
		} else {
			$data['category_id'] = 0;
		}

		if (isset($parts[1])) {
			$data['child_id'] = $parts[1];
		} else {
			$data['child_id'] = 0;
		}

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

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

		$data['categories'] = array();

		$categories = $this->model_catalog_category->getCategories(0);

		foreach ($categories as $category) {
			$children_data = array();

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

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

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

			$filter_data = array(
				'filter_category_id'  => $category['category_id'],
				'filter_sub_category' => true
			);

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

		return $this->load->view('extension/module/category', $data);
	}
}

Это оригинал

 

 

 

 

 

 

<?php
class ControllerExtensionModuleCategory extends Controller {
	        
        public function index() {
          $this->load->language('extension/module/category');
      
          $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])) {
            $data['category_id'] = $parts[0];
          } else {
            $data['category_id'] = 0;
          }
      
          if (isset($parts[1])) {
            $data['child_id'] = $parts[1];
          } else {
            $data['child_id'] = 0;
          }
          
          if (isset($parts[2])) {
            $data['child2_id'] = $parts[2];
          } else {
            $data['child2_id'] = 0;
          }
      
          $this->load->model('catalog/category');
      
          $this->load->model('catalog/product');
      
          $result_all_categories = $this->cache->get('octemplates.module_category.' . (int)$this->config->get('config_language_id') . '.' . (int)$this->config->get('config_store_id') . '.' . $this->config->get('config_customer_group_id'));
          
          if (!$result_all_categories) {
            $categories = $this->model_catalog_category->getCategories(0);  
            
            foreach ($categories as $category) {
              $children_data = array();
              $children = $this->model_catalog_category->getCategories($category['category_id']);
              
              foreach ($children as $child) {
                $children_data_level2 = array();
                $children_level2 = $this->model_catalog_category->getCategories($child['category_id']);       
                
                foreach ($children_level2 as $child_level2) {
                  $data_level2 = array(
                    'filter_category_id'  => $child_level2['category_id'],
                    'filter_sub_category' => true
                  );

                  $children_data_level2[] = array(
                    'category_id' => $child_level2['category_id'],
                    'name'  =>  $child_level2['name'],
                    'href'  => $this->url->link('product/category', 'path=' . $category['category_id'] . '_' . $child['category_id'] . '_' . $child_level2['category_id']),
                    'id' => $category['category_id']. '_' . $child['category_id']. '_' . $child_level2['category_id']
                  );
                }

                $children_data[] = array(
                  'category_id' => $child['category_id'],
                  'name'        => $child['name'],
                  'children2'    => $children_data_level2,
                  'href'        => $this->url->link('product/category', 'path=' . $category['category_id'] . '_' . $child['category_id']) 
                );    
              }
        
              $result_all_categories[] = array(
                'category_id' => $category['category_id'],
                'name'        => $category['name'],
                'children'    => $children_data,        
                'href'        => $this->url->link('product/category', 'path=' . $category['category_id'])
              );  
            }
      
            $this->cache->set('octemplates.module_category.' . (int)$this->config->get('config_language_id') . '.' . (int)$this->config->get('config_store_id') . '.' . $this->config->get('config_customer_group_id'), $result_all_categories);
          }

          $data['categories'] = $result_all_categories;

          return $this->load->view('extension/module/category', $data);
        }

        public function old_index() {
		$this->load->language('extension/module/category');

		$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])) {
			$data['category_id'] = $parts[0];
		} else {
			$data['category_id'] = 0;
		}

		if (isset($parts[1])) {
			$data['child_id'] = $parts[1];
		} else {
			$data['child_id'] = 0;
		}

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

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

		$data['categories'] = array();

		$categories = $this->model_catalog_category->getCategories(0);

		foreach ($categories as $category) {
			$children_data = array();

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

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

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

			$filter_data = array(
				'filter_category_id'  => $category['category_id'],
				'filter_sub_category' => true
			);

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

		return $this->load->view('extension/module/category', $data);
	}
}

из system

Змінено користувачем userAT
Надіслати
Поділитися на інших сайтах


31 минуту назад, jaffagold сказал:

Dds же сами написали в своем первом сообщении

/www/happyhome.ru/system/storage/modification/catalog/controller/extension/module/catalog.php 

Это и есть временный модифицированный файл.

Чтобы не лазить по папкам используйте средства опенкарт

Дополнения- Менеджер дополнений

Кнопки в правом верхнем углу

Сброс- стирает временные модифицированные файлы

Обновить- обновляет временные файлы.

Кнопку удалить использовать, только когда вы совсем хотите удалить модификатор из системы.

 

да, сорян...но суть та что такой конструкции нет, с которой происходят изменения если делать их в system/..

 

$children_data_level2[] = array(
'category_id' => $child_level2['category_id'],
'name' => $child_level2['name'],
'href' => $this->url->link('product/category', 'path=' . $category['category_id'] . '_' . $child['category_id'] . '_' . $child_level2['category_id']),
'id' => $category['category_id']. '_' . $child['category_id']. '_' . $child_level2['category_id']
);
Змінено користувачем userAT
Надіслати
Поділитися на інших сайтах


9 минут назад, jaffagold сказал:
  Скрыть контент


'octemplates.module_category.

Этот текст говорит, что у вас установлен шаблон от octemplates

Зачем вы тогда нам морочите голову дефолтными файлами?

 

зачем такие вопросы...? могли бы и не отвечать...я если бы знал, не задавал бы вопросов, спасибо

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


Пожалуй, отвечу тут в последний раз.

Когда вы просите о помощи, будьте добры, уважайте время тех людей, которые будут пытаться вам помочь.

Выдавайте полную информацию. не заставляйте вытягивать ее.

Принято указывать шаблон, установленные модули. Обычно, желательна также ссылка на сайт.

То, что вы задаете свои вопросы не в теме поддержки шаблона наводит на некоторые неприятные выводы.

 

Змінено користувачем jaffagold
Надіслати
Поділитися на інших сайтах


14 минут назад, jaffagold сказал:

Пожалуй, отвечу тут в последний раз.

Когда вы просите о помощи, будьте добры, уважайте время тех людей, которые будут пытаться вам помочь.

Выдавайте полную информацию. не заставляйте вытягивать ее.

Принято указывать шаблон, установленные модули. Обычно, желательна также ссылка на сайт.

То, что вы задаете свои вопросы не в теме поддержки шаблона наводит на некоторые неприятные выводы.

 

 

как скажешь, отец

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


46 минут назад, Tom сказал:

То есть , это как?

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

 

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


Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
×
×
  • Створити...

Important Information

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