0 Пользователей и 1 Гость просматривают эту тему.
  • 18 Ответов
  • 329 Просмотров
*

timofe

  • Осваиваюсь на форуме
  • 46
  • 0 / 0
Понимаю, что вопрос дурацкий, но надо.
Как добавить alias категории материала к классу элемента?

Чтобы было что-то типа:
Материал из категории "Стол" (алиас категории: stol), имеет блок div такого вида:
<div class="class_stol">Контент</div>
*

lexxbry

  • Завсегдатай
  • 1977
  • 53 / 5
затея интересная и думаю можно переменную тянуть
но вопрос зачем?
SEO-оптимизация,продвижение
Создание и сопровождение сайтов на Joomla
Миграция
*

timofe

  • Осваиваюсь на форуме
  • 46
  • 0 / 0
Есть необходимость менять стиль некоторых элементов материала в зависимости от категории

Сейчас дошел до этого:

Код
$db = JFactory::getDbo();
$cat_id = jrequest::getint('id');
$db->setQuery("select cat.alias from #__categories cat where cat.id='$cat_id'");
$category_title = $db->loadResult();

Ну и выводим в класс элемента:

Код
<body class="<?php echo $category_title; ?>">

Но что-то неправильно, так как некоторым материалам присваиваются не те категории, а некоторым вообще не присваиваются((...
*

lexxbry

  • Завсегдатай
  • 1977
  • 53 / 5
Код
<div class="<?php echo $this->item->title; ?>">

ну вот так алиас материала выводит
сейчас покопаю что бы алиас категории цеплял
SEO-оптимизация,продвижение
Создание и сопровождение сайтов на Joomla
Миграция
*

timofe

  • Осваиваюсь на форуме
  • 46
  • 0 / 0
Ну с выводом алиасами материала - это просто... Но они всегда практически разные, а это не айс)
*

lexxbry

  • Завсегдатай
  • 1977
  • 53 / 5
в общем смотри что сделал
вывожу таким образом
Код
<div class="<?php echo $this->item->category_alias; ?>">
пихаешь данный div в нужное тебе место и закрываешь потом где надо( у меня в файле /templates/шаб/html/com_content/article/default.php)
стили само собой под каждую категорию в CSS
SEO-оптимизация,продвижение
Создание и сопровождение сайтов на Joomla
Миграция
*

timofe

  • Осваиваюсь на форуме
  • 46
  • 0 / 0
А у меня так не выводится ничего(.....
Кроме того, что ты написал, нужно еще что-то куда-то добавлять?
*

lexxbry

  • Завсегдатай
  • 1977
  • 53 / 5
SEO-оптимизация,продвижение
Создание и сопровождение сайтов на Joomla
Миграция
*

lexxbry

  • Завсегдатай
  • 1977
  • 53 / 5
Спойлер
[свернуть]
вот мой default.php
вставлено в строку 67 закрывается на 91
SEO-оптимизация,продвижение
Создание и сопровождение сайтов на Joomla
Миграция
*

lexxbry

  • Завсегдатай
  • 1977
  • 53 / 5
http://joxi.ru/krDza5VUELgJE2
кеш только не забыть почистить
SEO-оптимизация,продвижение
Создание и сопровождение сайтов на Joomla
Миграция
*

lexxbry

  • Завсегдатай
  • 1977
  • 53 / 5
а так в общем идейка зачетная
SEO-оптимизация,продвижение
Создание и сопровождение сайтов на Joomla
Миграция
*

timofe

  • Осваиваюсь на форуме
  • 46
  • 0 / 0
Ну в общем в том варианте, который ты сделал, все работает))!

Но это не совсем то, что надо)))), так как в сам шаблон (index.php) не встроить это. Не срабатывает.
А нужно это же сделать с тегом <body>

))))....
*

lexxbry

  • Завсегдатай
  • 1977
  • 53 / 5
эм... а зачем с боди?
и зачем в индекс?

вам же надо менять в материале в зависимости от категории
так вот в шаблоне вывода материала добавьте конструкцию к нужным элементам

это в примере я добавил к тому полю
SEO-оптимизация,продвижение
Создание и сопровождение сайтов на Joomla
Миграция
*

timofe

  • Осваиваюсь на форуме
  • 46
  • 0 / 0
Изменяться должны элементы, которые стоят до компонента...
*

lexxbry

  • Завсегдатай
  • 1977
  • 53 / 5
Есть необходимость менять стиль некоторых элементов материала в зависимости от категории
ну тогда проще пояснить какие элементы
SEO-оптимизация,продвижение
Создание и сопровождение сайтов на Joomla
Миграция
*

timofe

  • Осваиваюсь на форуме
  • 46
  • 0 / 0
логотипы, контакты, меню, и все элементов, которые находятся не в компоненте)
*

lexxbry

  • Завсегдатай
  • 1977
  • 53 / 5
Тогда да, сначала надо получить алиас из бд
SEO-оптимизация,продвижение
Создание и сопровождение сайтов на Joomla
Миграция
*

timofe

  • Осваиваюсь на форуме
  • 46
  • 0 / 0
Ну в общем дорешал я задачку))))

В index.php шаблона, после строки:

Код
defined('_JEXEC') or die; 

вставляем этот код:

Код
$db = JFactory::getDbo(); 
$catid = JRequest::getInt('catid');
$db->setQuery("select cat.alias from #__categories cat where cat.id='$catid'");
$category_title = $db->loadResult();

Ну и в <body>, или какой-либо другой тег прописываем класс:

Код
<body class="<?php echo $category_title; ?>">

После этого у меня все заработало!)))))
Ура товарищи!))
*

lexxbry

  • Завсегдатай
  • 1977
  • 53 / 5
SEO-оптимизация,продвижение
Создание и сопровождение сайтов на Joomla
Миграция
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

2 колонки в категории блог

Автор KatrinZ

Ответов: 2
Просмотров: 49
Последний ответ 16.11.2018, 12:08:25
от KatrinZ
Как вывести миниатюру материала Joomla через background-image?

Автор Merk

Ответов: 5
Просмотров: 137
Последний ответ 14.11.2018, 17:18:35
от Efanych
Найти программу для импорта материала

Автор webrapinfo

Ответов: 1
Просмотров: 70
Последний ответ 29.10.2018, 17:44:00
от xpank
Какие бы фишки добавить в блог?

Автор polezniy

Ответов: 29
Просмотров: 1635
Последний ответ 28.10.2018, 11:15:23
от polezniy
Поля field types - Вывод материала

Автор Шмайсер

Ответов: 11
Просмотров: 205
Последний ответ 25.10.2018, 12:51:54
от NewUsers