X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость ( Вход | Регистрация )

Открыть тему
Тема закрыта
> Смена шапки в категориях WP
Школьник
Школьник
Topic Starter сообщение 26.6.2011, 17:18; Ответить: Школьник
Сообщение #1


Участник
***

Группа: User
Сообщений: 138
Регистрация: 23.10.2010
Из: Россия, Сызрань
Поблагодарили: 45 раз
Репутация:   14  


Сайт - http://dmasta.ru
Проблема в том, что в категориях, для которых я указал вывод шапок, иногда выводятся совсем не те шапки. Все прописано -
header.php
<div id="top" class="<?php if (in_category( '3' )) { ?> headman3 <?php }
elseif (in_category( '0' )) { ?> headman0 <?php }
elseif (in_category( '1' )) { ?> headman1 <?php }
elseif (in_category( '4' )) { ?> headman4 <?php }
elseif (in_category( '7' )) { ?> headman0 <?php }
elseif (in_category( '5' )) { ?> headman5 <?php }
elseif (in_category( '6' )) { ?> headman6 <?php }
elseif (in_category( '10' )) { ?> headman10 <?php } ?>">

style.css
.headman3 {
background-image: url("images/Music.jpg");
}
.headman5 {
background-image: url("images/Photo.jpg");
}
.headman0 {
background-image: url("images/Glavnaya.jpg");
}
.headman10 {
background-image: url("images/Merch.jpg");
}
.headman6 {
background-image: url("images/concerts.jpg");
}
.headman1 {
background-image: url("images/News.jpg");
}
.headman4 {
background-image: url("images/Video.jpg");
}

И все равно, например, в категории видео (4) выводится картинка для категории мерчендайз (10). Кто знает, в чем проблема? Может какой-то более удобный способ вывода картинок есть?

Сообщение отредактировал Школьник - 26.6.2011, 17:22


--------------------
Мой блог.
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Freon
Freon
сообщение 27.6.2011, 12:59; Ответить: Freon
Сообщение #2


Частый гость
**

Группа: User
Сообщений: 90
Регистрация: 22.4.2008
Поблагодарили: 23 раза
Репутация:   5  


Ну, так а зачем в кавычки id категории берёте? Он думает, что это строка и ищет категорию по slug, а не по id. Вот и находит неведомо что. Id должен быть integer.
(Школьник @ 26.6.2011, 17:18) *
Может какой-то более удобный способ вывода картинок есть?

Ну, например, создайте функцию:
function get_header_class($category) {
        
    $cat_id = $category->cat_ID;

    //массив: ключ - id категории, значение - класс для шапки
    $headerclasses = array(
        0 => 'headman0',
        1 => 'headman1',
        2 => 'headman2',
        // и т.д.

    );

    if(!empty($headerclasses[$cat_id])) {
          return $headerclasses[$cat_id];
    } else {
        return 'defaultheaderclass';
    }
}

И используйте её потом:
<div id="top" class="<?php echo get_header_class(array_pop(get_the_category())) ?>">


Не хотите функцию - делайте через switch. В любом случае меньше проверок будет и код компактнее.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) Как вывести кастомные типы постов в категориях?
1 Levels 499 1.12.2017, 17:50
автор: mmkulikov
Открытая тема (нет новых ответов) Тема имеет прикрепленные файлыСмена урлов у существующего сайта
Как повлияло на позиции удаление .html
9 SeoKot 1510 20.11.2017, 13:53
автор: RMak
Открытая тема (нет новых ответов) Корректировка шапки сайта
изменить расположение элементов , сколько стоит?
4 dtools 1553 9.11.2017, 12:09
автор: dtools
Открытая тема (нет новых ответов) Тема имеет прикрепленные файлыСмена домена
7 July82 860 8.11.2017, 0:18
автор: nahalturu
Открытая тема (нет новых ответов) Смена урлов на новом сайте
4 tiptopvkr 643 26.10.2017, 16:04
автор: GlazAlmaz


 



RSS Текстовая версия Сейчас: 17.12.2017, 18:23
Дизайн