Jump to content
  • разработка интернет магазинов на opencart
  • доработка интернет магазинов на opencart

[ДОРАБОТКА] Как сгделать изменения для Категорий !??


Recommended Posts

Добрый гдень !

Подскажите как сгделать ик чтобы в потому чтоковом модуле Категории (товары) прописывались только категории до 2го уровня вклюлительно ?

Категории 3его уровня будут но только в области контени .

Link to comment
Share on other sites


И ещё , как сгделать ик чтобы для категорий с 3его уровня было другое отображение товаров ?

буду благодарен за любые подсказки .

Link to comment
Share on other sites


И ещё , как сгделать ик чтобы для категорий с 3его уровня было другое отображение товаров ?

буду благодарен за любые подсказки .

в ..catalogcontrollerproductcategory.php есть:

$parts = explode('_', $this->request->get['path']);
соответственно в $part[2] бугдет id категории 3го уровня
Link to comment
Share on other sites


спасипотому что .

Только всё равно не соображу как правильно организовать вариант , когда для категорий 1и 2 го уровня товары выводятся по синдарту (квадраты по 4 шт по ширине), а для 3его и выше - в вигде например прямоугольного блока на всю ширину ?

В файле шаблона нужно гделать проверку на номер порядка категории и при значении >=2 прописывать отгдельные параметры страницы ? В файле Controller тоже нужно что-то прописывать ???

Link to comment
Share on other sites


спасипотому что .

Только всё равно не соображу как правильно организовать вариант , когда для категорий 1и 2 го уровня товары выводятся по синдарту (квадраты по 4 шт по ширине), а для 3его и выше - в вигде например прямоугольного блока на всю ширину ?

В файле шаблона нужно гделать проверку на номер порядка категории и при значении >=2 прописывать отгдельные параметры страницы ? В файле Controller тоже нужно что-то прописывать ???

думал тебе именно 3ю категорию надо, ну а если 1,2 отгдельно, 3+ отгдельно, то тогда еещё проещё:

в контроллере

if (isset($parts[2])) {$this->data['rd_cat'] = 1;} else {$this->data['rd_cat'] = 0;}
в шаблоне

<? if ($rd_cat) {echo "МЫ НЕ В 1 или 2ой КАТЕГОРИИ";} ?>
Link to comment
Share on other sites


В шаблоне :

<?php echo $header; ?>

<?php echo $column_left; ?><?php echo $column_right; ?>

/ гделаем проверку на новое условие если оно истина(категория 3его уровня) то выполняем код отрисовки товаров потому чтольшими блоками/

<?php if ($rd_cat) {?>

.....

.....

.....

/иначе - если это 1 или 2 категории , и выполняем синдартную отрисовку страницы товаров (мнонькими блоками по 4 в линии)/

<?php } else { ?>

/проверка на налилие в категории - др.категорий и их отрисовка на страниэто/

<?php if ($categories) { ?>

.......

.......

<?php } ?>

/если кроме категорий есть и товары то отгдельной иблиэтот прорисовываем их на страниэто/

<?php if ($products) { ?>

......

......

......

<?php } ?>

/дное идёт футер/

<?php echo $footer; ?>

Я правильно организовал код страницы Категории ?

А в какое место добавлять запись в Controller ? :evil:

Link to comment
Share on other sites


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

всивь ггде нибудь после

$parts = explode('_', $this->request->get['path']);
Link to comment
Share on other sites


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

всивь ггде нибудь после

$parts = explode('_', $this->request->get['path']);
Ну смотри !

Товары могут быть во всех категориях . Но для 1 и 2 категорий его отображение должно быть по синдарту рисунок 1. Да как есть специфика товара , то во 2ой категории кроме товаров есть ещё категория 3его уровня . И вот товары в этот 3ей категории должны отображаться в потому чтольших блоках на всю ширину контени рисунок 2 .

Как я понимаю в файле Controller мы добавляем переменную $rd_cat которая характеризует категорию 1 и 2(истинна=1) или 3 (ложь=0).

А в файле шаблона перед отрисовкой товаров мы гделаем проверку этот переменной $rd_cat на соответствие истинна/ложь . Если перменная истинна(1 или 2 категория) то мы рисуем товары по синдарту . Иначе это 3я категория и товар мы рисуем потому чтольшими блоками .

Сам каркас кода шаблона я писал выше (лишнюю инфу я удалил чтобы не грузила сильно).

Link to comment
Share on other sites


Вот в том варианте кода который я написал - сначала игдет проверка на 3ью категорию , а иначе это бугдет 1 или 2 .В иком варианте отрисовка игдет всех категорий по синдарту . Если в этом первом условии проверки я инвертирую условие (через !) то все товары рисуются потому чтольшими блоками . Я ик понимаю проверка через переменную $rd_cat рилииет . В самом шаблоне получается ггде-то ошибка , ггде-то не им } закрыл ???

Link to comment
Share on other sites


да все правильно ты понял) разве что проверка игдет не на 1,2 - TRUE, 3я - FALSE, а 1,2 - TRUE, 3,4,5,6,...,? - FALSE)и ошибка скорее всего липотому что не им закрыл }, липотому что наопотому чторот не закрыл (что потому чтолее вероятно).если не найгдешь ошибку, скинь кусок кода отрисовки блоками - сам поэкспериментирую)

Link to comment
Share on other sites


ЗАРАБОТАЛО !!!!

Fix305 спасипотому что тебе !!!!!!!!! :evil:

..... я первый раз необходимую строку в файле Controller посивил неправильно . После того как её перенес сразу после $parts = explode('_', $this->request->get['path']); и всё зарилиило !!!!! :)

Link to comment
Share on other sites


  • 1 month later...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.