Перейти к содержанию
Официальный форум поддержки Simpla

Разные значения стилей для одного класса разных категорий.


Перейти к решению Решено mishanya,

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

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

 

<div class="potolok" id="#"> id- категория товара.

 

/сss

.potolok {

                 .potolok .id=15 {background-color: red};

                 .potolok .id=14 {background-color: green};

 

}

 

Подскажите пожалуйста синтаксис css и конструкцию условия вывода цвета не только категории, а если выбран товар из категории. ( Хотя бы намекните где почитать про эти классы css+)

Изменено пользователем voodoo_pan
Ссылка на сообщение
Поделиться на другие сайты

зачем отдельно создавать файл стилей?

добавьте в таблицу категорий дополнительное поле цвет, и выводите этот цвет в

style="background-color: {$category->color}"
Изменено пользователем mishanya
Ссылка на сообщение
Поделиться на другие сайты

 

зачем отдельно создавать файл стилей?

добавьте в таблицу категорий дополнительное поле цвет, и выводите этот цвет в

style="background-color: {$category->color}"

Гениально ) но вопрос остается в силе, где почитать о конструкциях сss  такого типа. И как  тогда сделать в админке , что бы вводить цвет не кодам, а палитрой  цветов как firefox инспекторе

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

Гениально ) но вопрос остается в силе, где почитать о конструкциях сss  такого типа. И как  тогда сделать в админке , что бы вводить цвет не кодам, а палитрой  цветов как firefox инспекторе

 

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

 

<div class="potolok potolok_{$category->id}">
.potolok.potolok_15 {background-color: red}
.potolok.potolok_14 {background-color: green}

 

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

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

 

 

И как  тогда сделать в админке , что бы вводить цвет не кодам, а палитрой  цветов как firefox инспекторе

 

посмотрите в Лейблы(метки) заказов, там используется колорпикер.

Изменено пользователем mishanya
Ссылка на сообщение
Поделиться на другие сайты

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

 

<div class="potolok potolok_{$category->id}">
.potolok.potolok_15 {background-color: red}
.potolok.potolok_14 {background-color: green}

 

Склоняюсь к єтой конструкции, но есть нюанс, а если категорий будет много( для универсальности ) и будет ли работать єта конструкция если вібрать товар из категории, а не категорию.

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

 

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

 

<div class="potolok potolok_{$category->id}">
.potolok.potolok_15 {background-color: red}
.potolok.potolok_14 {background-color: green}

 

Склоняюсь к єтой конструкции, но есть нюанс, а если категорий будет много( для универсальности ) и будет ли работать єта конструкция если вібрать товар из категории, а не категорию.

 

да, в симпла в товар кроме всех категорий

$product->categories = $this->categories->get_categories(array('product_id'=>$product->id));

передается еще и первая(главная) категория товара

$this->design->assign('category', reset($product->categories));
Изменено пользователем mishanya
Ссылка на сообщение
Поделиться на другие сайты

 

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

 

<div class="potolok potolok_{$category->id}">
.potolok.potolok_15 {background-color: red}
.potolok.potolok_14 {background-color: green}

 

Склоняюсь к єтой конструкции, но есть нюанс, а если категорий будет много( для универсальности ) и будет ли работать єта конструкция если вібрать товар из категории, а не категорию.  Два разных файла вызова стиля, все ок.

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

да, в симпла в товар кроме всех категорий

$product->categories = $this->categories->get_categories(array('product_id'=>$product->id));

передается еще и первая(главная) категория товара

$this->design->assign('category', reset($product->categories));

Мы же назначаем стиль по условию если категория 2 и все вложенное ?

Ссылка на сообщение
Поделиться на другие сайты
Склоняюсь к єтой конструкции, но есть нюанс, а если категорий будет много( для универсальности )

так а при чем тут количество категорий? вы хотите окрасить хлебные крошки в цвета, вообще нигде нет чтобы выводились несколько категорий (кроме поиска). всегда есть или одна категория (и она имеет подкатегории) или есть товар с главной категорией.

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

 

 
Мы же назначаем стиль по условию если категория 2 и все вложенное ?

 

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

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

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

Вы меня правильно поняли и дали развернуты ответ с первого раза. Дальше это уже пошел полет фантазии, спасибо большое у меня Все сразу получилось.

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

Вы меня правильно поняли и дали развернуты ответ с первого раза. Дальше это уже пошел полет фантазии, спасибо большое у меня Все сразу получилось.

 

понятно. если ваша фантазия хочет сделать цвета только для корневых категорий (с учетом всех вложенных) можете использовать код

<div class="potolok potolok_{$category->path[0]->id}">

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

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

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
×
×
  • Создать...