Перейти к содержанию
cashfile

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

Рекомендуемые сообщения

Добрый день !

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

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

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

в ..catalogcontrollerproductcategory.php есть:

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

спасибо .

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

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

спасибо .

Только всё равно не соображу как правильно организовать вариант , когда для категорий 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ой КАТЕГОРИИ";} ?>

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В шаблоне :

<?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:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

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

$parts = explode('_', $this->request->get['path']);

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

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

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

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

post-70-1293741782,6214_thumb.jpg post-70-1293741782,6445_thumb.jpg

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

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

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

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

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.