Посоветуйте модуль для подкатегорий

coolice

Создатель
Регистрация
12 Ноя 2015
Сообщения
29
Реакции
3
Всем привет!

Столкнулся со следующей проблемой. Для сео у меня в категориях большинство товаров разделены по функциям. Например, раздел "эхолоты". В нем есть как подкатегории с названиями брендов, так и подкатегории с названиями функций ( "Беспроводные" например ).

Стандартными способами у меня не получается собрать нормальные подкатегории, т.к. получается каша мала. Может кто знает, как это можно удобнее сделать? То есть, чтобы к конкретной подкатегории добавлять пункты меню.
 
Кастомное меню, которое может произвольные ссылки любой вложенности создавать
Для просмотра ссылки Войди или Зарегистрируйся
+
Фильтр с генерацией страниц для вариантов выбора
1. Для просмотра ссылки Войди или Зарегистрируйся
2. Для просмотра ссылки Войди или Зарегистрируйся
 
Fatal error: Class 'Controllerextensionmodulesupermenu' not found in ................public_html\system\storage\modification\system\engine\action.php on line 48 Кто подскажет как исправить (опенкарт 2,3)

<?php
// * @CopyRight OPENCART.PRO 2011 - 2016.
// * @Forum Для просмотра ссылки Войди или Зарегистрируйся
// * @source See SOURCE.txt for source and other copyright.
// * @license GNU General Public License version 3; see LICENSE.txt

class Action {
private $id;
private $route;
private $method = 'index';

public function __construct($route) {
$this->id = $route;

$parts = explode('/', preg_replace('/[^a-zA-Z0-9_\/]/', '', (string)$route));

// Break apart the route
while ($parts) {
$file = DIR_APPLICATION . 'controller/' . implode('/', $parts) . '.php';

if (is_file($file)) {
$this->route = implode('/', $parts);

break;
} else {
$this->method = array_pop($parts);
}
}
}

public function getId() {
return $this->id;
}

public function execute($registry, array $args = array()) {
// Stop any magical methods being called
if (substr($this->method, 0, 2) == '__') {
return new \Exception('Error: Calls to magic methods are not allowed!');
}

$file = DIR_APPLICATION . 'controller/' . $this->route . '.php';
$class = 'Controller' . preg_replace('/[^a-zA-Z0-9]/', '', $this->route);

// Initialize the class
if (is_file($file)) {
include_once($file);

$controller = new $class($registry);
} else {
return new \Exception('Error: Could not call ' . $this->route . '/' . $this->method . '!');
}

$reflection = new ReflectionClass($class);

if ($reflection->hasMethod($this->method) && $reflection->getMethod($this->method)->getNumberOfRequiredParameters() <= count($args)) {
return call_user_func_array(array($controller, $this->method), $args);
} else {
return new \Exception('Error: Could not call ' . $this->route . '/' . $this->method . '!');
}
}
}
.
 
А что указано на самой 48 строке?
 
Строка 48
$controller = new $class($registry);
в этом отрезке
if (is_file($file)) {
include_once($file);

$controller = new $class($registry);
} else {
return new \Exception('Error: Could not call ' . $this->route . '/' . $this->method . '!');
}

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

вот тот клас
Для просмотра ссылки Войди или Зарегистрируйся
расширение .php там
 

Вложения

  • supermenu.txt
    26,1 KB · Просмотры: 1
Последнее редактирование:
Назад
Сверху