Смена стиля на разных страницах ?

Статус
В этой теме нельзя размещать новые ответы.

hipachka

Гуру форума
Регистрация
16 Мар 2009
Сообщения
393
Реакции
82
Задача: Есть Шаблон1 для главной страницы и Шаблон2 для всех внутренних страниц. Как реализовать?
Решение:
в index.php шаблона пишем:
PHP:
<?php
defined( '_JEXEC' ) or die( 'Restricted access' );
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="<?php echo $this->language; ?>" lang="<?php echo $this->language; ?>" >
<head>
<jdoc:include type="head" />
<link rel="stylesheet" href="<?php echo $this->baseurl ?>/templates/system/css/system.css" type="text/css" />
<link rel="stylesheet" href="<?php echo $this->baseurl ?>/templates/system/css/general.css" type="text/css" />
<link rel="stylesheet" href="<?php echo $this->baseurl ?>/templates/<?php echo $this->template ?>/css/main.css" type="text/css" />
 <!--[if lte IE 6]>
<link rel="stylesheet" href="<?php echo $this->baseurl ?>/templates/<?php echo $this->template ?>/css/ie.css" type="text/css" />   
 <![endif]-->
 <!--[if lte IE 7]>
<link rel="stylesheet" href="<?php echo $this->baseurl ?>/templates/<?php echo $this->template ?>/css/ie7.css" type="text/css" />   
 <![endif]-->
</head>
<body>
<?php
$menu = & JSite::getMenu();
if ($menu->getActive() == $menu->getDefault()) { ?>
Шаблон1
<?php } else { ?>
Шаблон2
<?php } ?>
</body>
</html>
У кого еще какие есть мысли по тому как реализовать этот момент?
 
Элементарно Вацтон....
Всё решается на уровне стандартных возможностях самого движка:
идём в менеджер шаблонов, отмечаем тот, который будет на всех страницах кроме главной и жмем по-умолчанию, далее заходим в тот который будет на главной и назначаем его для нужных пунктов меню (в твоём случае, тот который будет вести на главную) и жмём сохранить
Вуа-ля
А если хочется большой и чистой любви с кодом - то тут масса вариантов
 
  • Нравится
Реакции: vctr
Прикольно

Никогда не обращал на это внимание

Всегда в коде делал
 
Добрый день! возник вопрос: можно ли сдеать так, чтобы при переходе на определенную страницу сайта менялся стиль шаблона??
поясню, - в шаблоне имееться 5 цветовых гамм (меняется цвет меню, лого, ну и остальной окрас),- хочу чтобы на некоторых страницах менялся стиль..
 
Любой шаблон можешь присвоить к пункту меню, смотри в каждом шаблоне "Привязка к пунктам меню".
Хотелось бы узнать, что за "определенная страница"?
 
На многих платных шаблонах такая фишка есть))
Долго их разбирал и пришел к выводу что легче все самому делать:)
есть несколько способов:
самый простой вроде))
1) в джумле в шаблонах присвоить к каждой странице определенный шаблон, а сам шаблон уже подредактировать как тебе нужно
2) используя $itemid и знания php привязать к нужной странице то что тебе нужно, пример:
Код:
<?php
   if ($Itemid == '11' ) { echo "<img src='images/ico/1.gif' />";
   } elseif ($Itemid == '12' ) { echo "<img src='images/ico/2.gif' />";
   } elseif ($Itemid == '13' ) { echo "<img src='images/ico/3.gif' />";
   } else {}
?>
3) использовать jquery, урок по смене цвета задника
 
Любой шаблон можешь присвоить к пункту меню, смотри в каждом шаблоне "Привязка к пунктам меню".
Хотелось бы узнать, что за "определенная страница"?
да обичная страница... просто хочеться хоть как-то освежить сайт, а то уже приелся, а так буду меня цветовые гаммы и видоизменять лого..

всем спасибо за советы, буду пробовать :)

Добавлено через 8 минут
столкнулся с проблемкой.. чтобы назначить этот шаблон с другой расцветкой к пункту меню -нужно чтоб он не был шаблоном по-умолчанию..тоесть нужно сделать его копию и ее назначить на нужные пункты.. -как сделать копию шаблона?
 
Дублируешь папку шаблона (хоть сколько раз), переименовываешь название шаба (смотри xml файл) + папку. Включаешь в свойствах шаба те настройки, которые нужны и публикуешь в соответствующем меню.
Есть один момент, шаблон будет действовать на все страницы в этом пункте меню. Например, дать каждой странице контента проблематично, т.к. столько меню не сделаешь.

З.Ы. "да обичная страница" - страница состоит из компонента и модулей (еще и плагины, влияют, но не так сильно), смотря, что ты хочешь изменить и у всего есть название. Если объяснять как все устроено, лучше прочти мануал или давай более конкретней.
 
в папке с шаблонами продублировать папку с твоим шаблоном и переименовать его, чтобы не запустать в самой джумле в каждом шаблоне в файле templateDetails.xml строчку <name>...</name> вписать имя для опознания)))
 
Разные шаблоны

Подскажие как можно реализвать на разных страницах разные шаблоны... допутим главновная страница один диз... а на внутренних другой.... joomla 1.5.*
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху