Вопрос по фону для сайта.

W
На сайте с 27.12.2011
Offline
19
564

Подскажите плиз, как можно сделать фоном сайта изображения в jpg, для разных разделов - разные картинки.

В идеале, чтобы этот фон был статичен при скроле страницы.

Сайт на Вордпресс.

А мне все пофиг, я с покоса!
I
На сайте с 06.08.2012
Offline
1
#1

Если я верно понял, то...

Wordpress Codex: body_class()

Под админом заходим в wp-admin/theme-editor.php?file=header.php

Ищем строчку с "<body". Она должна выглядеть так:

<body <?php body_class(); ?>>

Таким образом, к <body> каждой из страниц применяются определенные правила. Далее редактируем необходимые CSS-ки и вуаля!

Пример наверное нужен=) Допустим, я зашел в категорию #51 под названием "abc". Тогда к тегу применяются следующие стили:

<body class="archive category category-abc category-51 logged-in admin-bar customize-support">

Смело можно править CSS темы, названия классов у нас есть.

С постами чуточку сложнее, ведь изначально никакого id не передается.

Открываем wp-includes/plugin.php, в конец добавляем код из кодекса


function category_id_class($classes) {
global $post;
foreach((get_the_category($post->ID)) as $category)
$classes[] = $category->category_nicename;
return $classes;
}
add_filter('post_class', 'category_id_class');
add_filter('body_class', 'category_id_class');

Таким образом, среди классов <body>-тега нашего поста будет искомый класс категории, в нашем случае - abc.

Далее - вторая часть вопроса.

Вариантов тоже немного - либо растягивать картинку, либо замостить, либо показать кусок в случае, если оно не помещается. Советую самостоятельно поэкспериментировать, поиграться можно со свойствами background-origin, background-attachment и background-position.

Аттачмент фиксед даст нам приклеивание при скролле (хотя в недавнем проекте я столкнулся с тем, что на всяких айпадах оно не работает).

PS: в куске кода из кодекса... $classes***91;***93; - естественно, вместо этого должно быть "$classes[]" без кавычек. Форум фильтрует :)

W
На сайте с 27.12.2011
Offline
19
#2

Блин, даже не ожидал такого развернутого и толкового ответа. :)

Спасибо большое. :)

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий