Відповіді:
Існує кілька способів додати спеціальний код CSS на певну сторінку. Ось пара альтернатив:
Alt 1 - Клас
сторінки Використання сторінок класів. У редакторі елементів меню на вкладці "Відображення сторінки" є поле під назвою "Клас сторінки". Це додасть клас до вашого <body>
тегу (або <div class="YOURCLASS">...</div>
навколо вмісту), залежно від налаштування шаблону.
Потім просто створіть нове правило у файлі CSS шаблону, використовуючи вказаний вами клас.
Наприклад, Додати mycustomclass
до поля "Клас сторінки" у пункті меню та помістити це у свій CSS-файл:
.mycustomclass p {font-color:red;} // Make text red on this particular page
Alt 2 - Спеціальні модулі CSS
Для цього доступно декілька модулів. Одним із прикладів є спеціальний CSS - модуль, який дозволяє додавати будь-який CSS-код і публікувати його на сторінках, які ви хочете стилізувати.
Аналогічний варіант - Custom HTML Advanced - модуль, який дозволяє додавати HTML, JavaScript та CSS на свої сторінки. Код може бути доданий до <head>
тегу автоматично.
Alt 3. - завантажте додатковий таблицю стилів CSS
Ще одна альтернатива - перевірити поточний ідентифікатор елемента меню у index.php
файлі шаблону та завантажити необхідну таблицю стилів CSS за потреби:
<?php
$currentMenuId = JSite::getMenu()->getActive()->id ;
if ($currentMenuId == "14") {
echo '<link rel="stylesheet" type="text/css" href="mystyle.css">';
}
?>
Один з моїх улюблених підходів - створити динамічні заняття для елемента тіла.
Так:
<?php
$app = JFactory::getApplication();
$menu = $app->getMenu();
$active = $menu->getActive();
$class = $active->alias . " pageid-" . $active->id;
?>
<body class="<?php echo $class; ?>">
Нижче наведено кілька прикладів того, що наведено вище.
Головна сторінка:
<body class="home pageid-13">
Сторінка про нас:
<body class="about-us pageid-15">
Тепер ви можете створювати спеціальні стилі на сторінці, використовуючи вищевказані класи.
Це ще один спосіб робити те саме.
Вище за вчення:
<?php
$app = JFactory::getApplication();
$menu = $app->getMenu()->getActive();
$pageclass = '';
if (is_object($menu))
$pageclass = $menu->params->get('pageclass_sfx');
?>
Входить до вашого індексу, де ваш клас тіла:
<body id="<?php echo $pageclass ? htmlspecialchars($pageclass) : 'default'; ?>">
Тепер все, що ви додасте до класу сторінки пункту меню, з’явиться в ідентифікаторі тіла. Будь-який пункт меню без класу автоматично буде body id = "за замовчуванням".
Також ви можете спробувати за допомогою цього розширення призначити різні таблиці стилів до пунктів меню: http://extensions.joomla.org/extensions/extension/style-a-design/templating/css2switch-basic
З повагою