Свой шаблон для каждого раздела

Главные вкладки

Аватар пользователя mortuary mortuary 23 июня 2011 в 10:13

Добрый день.

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

Комментарии

Аватар пользователя sas@drupal.org sas@drupal.org 23 июня 2011 в 11:29

1) Создать и скопировать например в тему картинки для разделов с именем url_раздела.png
2) В page.tpl вставить style="background: url(url_раздела.png);", конечно предварительно проверив на существование картинки для раздела Smile

Аватар пользователя mortuary mortuary 23 июня 2011 в 14:12

<a href="mailto:sas@drupal.org">sas@drupal.org</a> wrote:
1) Создать и скопировать например в тему картинки для разделов с именем url_раздела.png
2) В page.tpl вставить style="background: url(url_раздела.png);", конечно предварительно проверив на существование картинки для раздела :)

Спасибо. В PHP не силен, можно по подробнее про "предварительную проверку"?

Аватар пользователя sas@drupal.org sas@drupal.org 24 июня 2011 в 9:22

mortuary wrote:
<a href="mailto:sas@drupal.org">sas@drupal.org</a> wrote:
1) Создать и скопировать например в тему картинки для разделов с именем url_раздела.png
2) В page.tpl вставить style="background: url(url_раздела.png);", конечно предварительно проверив на существование картинки для раздела :)

Спасибо. В PHP не силен, можно по подробнее про "предварительную проверку"?

page.tpl
...

<div id="header"<?php print $bg_header ? ' style="background: url(' . $bg_header .  ') no-repeat 0 0;"' : ''; ?>>

...

template.php

<?php
...
function 
mytema_preprocess_page(&$variables){
...
if(
$_GET['q']){
        
$file path_to_theme() . '/images/' "bg_" str_replace('/''__'$_GET['q']) . '.jpg';
        if(
file_exists($file)){
            list(
$width$height$type$image_attributes) = [user=getimagesize]getimagesize[/user]($file);
            if(
$width){
                
$variables['bg_header'] = url($file, array('absolute' => TRUE));
            }
        } elseif (
user_access('administer site configuration')) {
            
$variables['bg_header_message'] = t("you can set another HEADER image for url - url, size 1198x378, copy file with name - <strong>bg_@url_mashine.jpg</strong> in images folder.", array('url=> $_GET['q'], 'url_mashine=> str_replace('/''__'$_GET['q'])));
        }
    }
...
}
?>

P.S. код для 7-ки - пример

Аватар пользователя Alamir Alamir 23 июня 2011 в 11:43

JS, JQ, Viewsом можно чтоб рандомно пихал, или создай блок на месте изображения, в блоке показывай изображение, соответственно свой блок с картинкой для каждого раздела.

Аватар пользователя Groomak Groomak 23 июня 2011 в 13:52

Можно темезировать всё, подключая нужную тему по пути theme key модуль. Для баннеров есть отдельный модуль. На помню как называется. Но есть.