Такая задача: Нужно чтобы при создании/редактировании ноды в группе workflows (или другой), среди checkbox'ов Make sticky, Promote и др. добавился checkbox Make hot, при этом заголовок ноды на главной странице с отмеченным Make hot, выделялся размером/цветом шрифта, т.е. чтобы у заголовка был класс или айди, отличный от других, чтобы я его мог сделать каким хочу.
При этом sticky не подходит, т.к. ноды должны следовать своим естественным порядком, сами ноды являют собой отдельный тип материала, без body, только title и поля cck, и на главной выводятся в виде тизеров.
Меня полностью устраивает существующий вывод/расположение/дизайн заголовков нод, не хватает выделения некоторых из них - чтобы они были "горячими", бросались в глаза.
вот как сейчас:
вот как хочу чтобы было (как вариант, главное чтобы был свой css класс а дальше дело за фантазией)
Комментарии
С помощью CCK добавь чекбокс и темизируй вывод заголовка в node.tpl.php своей тепы в зависимости от того установлен он или нет.
Или термин в таксономию.
А можно про это поподробнее. Или хотя бы подсказку, как нарыть такую информацию.
Да также, как и Ромка посоветовал
При наличии определенного термина, которым помечен материал, темизировать линк. А термин не отображать. Поройтесь в топиках о темизации на .орге - непременно найдете способы.
Я думаю, нужно будет лишь вставить 1-2 функции в template.php и чуток переписать node.tpl.php
А можно и не скрывать этот термин, а использовать, например, чтобы найти рекомендованные таким образом материалы.
Что-то вроде
foreach($node->taxonomy as $term_id=>$term_info) {
//тут мутим логику для исключения термина-метки
}
Всем спасибо за помощь, всё получилось, я пошел по первому пути (первый комент от Ромки), добавив еще одно поле CCK, хотя если-бы сделал как подсказал Химический Али с помощью таксономии, тогда можно было-бы сделать отдельный список/блок/страницу горячих новостей, но т.к. пока этого не требуется пошел по более простому пути.
Вот мои действия:
1. Идем в Content types выбираем нужный материал
2. Жмем добавить поле (Add field)
3. Выбираем тип поля (Field type), я выбрал Text - Check boxes/radio buttons, хотя можно было и Integer и др, у меня это не важно, главное чтобы были Check boxes/radio buttons, вводим имя, описание, опции, в значениях (Allowed values list) я ввел всего одно: "Make hot"
4. Теперь идем в node.tpl.php, и вставляем в нужном месте проверку вышеуказанного поля, и в зависимости от результата добавляем нужный код:
вот как было:
вот как стало:
так как мне нужно выделить заголовки только на главной, т.е. когда ноды - тизеры, отсюда и условие "if ($teaser" и собственно самое главное - это проверка созданного поля на наличие значения (в моем случае хоть какого-то) - "$node->field_hot[0][value]", если эти условия выполняются, то в класс title добавляется класс hot_title, который я в style.css разукрашиваю как хочу.
PS. Дальше больше, я добавил доп условия для подсвечивания "горячих" новостей разных тематик (горячая спорт новость - синим, горячая полит новость - красным и т.п.)
Также добавил страницу, где выводятся только "горячие" новости - создаем любой views - и в фильтр добавляем "Content: Make this = Make hot (field_hot Is one of Make hot)"