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

goga_pgasovav

  • Захожу иногда
  • 271
  • 3 / 0
  • Внимательный джумловод
Всем привет!
Нужно именно в index.php шаблона определять, отображается ли сейчас категория, и если да, то получать один из её параметров, будь то название, alias и т.п.
Определять категорию я умею:

Код
if(showPage(array('view'=>'category')))

А вот как получить заголовок текущей категории, это я понять не могу.
Прошу помощи!  !
« Последнее редактирование: 30.12.2019, 23:14:02 от goga_pgasovav »
*

draff

  • Живу я здесь
  • 4596
  • 311 / 7
  • Ищу работу
Определять категорию я умею:
Это откуда ? Почему не как в protostar ?
Код
$view     = $app->input->getCmd('view', '');
Код
<?php		$doc = JFactory::getDocument();
$doc->title; ?>
*

goga_pgasovav

  • Захожу иногда
  • 271
  • 3 / 0
  • Внимательный джумловод
draff

Цитировать
Это откуда ?
Есть такой топик «Различные условия в шаблонах Joomla 3.0 ...». Там подсмотрел и всегда использую.

Спасибо что отозвались.
Ваш метод работает, но я сформулировал вопрос максимально просто (не вдаваясь в подробности), хотя задача стоит чуть более сложная, и мне он не помогает.
Например если нужно получить alias а не название, то уже не срабатывает.
В идеале, хотелось бы добраться до любого из полей в категории: id, alias, note, description и прочим.
*

goga_pgasovav

  • Захожу иногда
  • 271
  • 3 / 0
  • Внимательный джумловод
Попытался решить задачу запросом к БД.

Код
$ctd = JRequest::getInt('Itemid'); // получаю ID текущей категории
$db = JFactory::getDbo();
$query = $db
    ->getQuery(true)
    ->select($db->quoteName('alias'))
    ->from($db->quoteName('#__categories'))
    ->where($db->quoteName('id'). ' = ' .$ctd);
$db->setQuery($query);
$result = $db->loadResult();
echo '<div>Output: '.var_dump($result).'</div>';

Но ничего не получается. var_dump возвращает значение NULL.
В чём может быть дело, товарищи?
*

xpank

  • Захожу иногда
  • 263
  • 25 / 0
Но ничего не получается. var_dump возвращает значение NULL.
В чём может быть дело, товарищи?
Разумеется будет null, т.к. Itemid не равно id категории. Это уникальный идентификатор пункта меню.

Как вариант:
Код
$app = JFactory::getApplication();
$cat_id = $app->input->getCmd('catid','');
if ($cat_id == '1')  //где 1 категория для которой должно срабатывать правило. Id смотреть в менеджере категорий.

*

goga_pgasovav

  • Захожу иногда
  • 271
  • 3 / 0
  • Внимательный джумловод
xpank, спасибо за наводку!
Уже лучше, но всё не то)
Почему-то определятся не текущая категоря, а самая верхняя. В то время, когда я нахожусь в подкатегории...
Т.е. мне нужен ID именно той категории, в которой я нахожусь в данный момент.

P.S.: ID нужный смог получить с помощью:

Код
$cat_id = JRequest::getInt('id');

Ну теперь буду пробовать дальше )
« Последнее редактирование: 31.12.2019, 00:26:22 от goga_pgasovav »
*

goga_pgasovav

  • Захожу иногда
  • 271
  • 3 / 0
  • Внимательный джумловод
Товарищи, дабы не плодить топики со сходными вопросами, решил развить тему здесь.
В общем, методом, описанным выше, я смог, в том числе, добраться до поля "params".
Но тут меня ожидало неожиданное препятствие.

Код
$cat_id = JRequest::getInt('id');
$db = JFactory::getDbo();
$query = $db
    ->getQuery(true)
    ->select($db->quoteName('params'))
    ->from($db->quoteName('#__categories'))
    ->where($db->quoteName('id'). ' = ' .$cat_id);
$db->setQuery($query);
$params = $db->loadObjectList(); //использовал loadObjectList(), т.к. возвращается массив

Получаю массив, а что с ним делать, так и не понял.
Как мне достучаться до нужного параметра по его названию?
Там их всего три: 'category_layout', 'image' и 'image_alt'.
Помогите пожалуйста!  !
*

ProtectYourSite

  • Живу я здесь
  • 2045
  • 110 / 4
  • Безопасность вебсайтов
*

draff

  • Живу я здесь
  • 4596
  • 311 / 7
  • Ищу работу
Проверяйте что в массиве и тип, скорее всего объект
Код
foreach($params as $param) {
var_dump($param);}
*

goga_pgasovav

  • Захожу иногда
  • 271
  • 3 / 0
  • Внимательный джумловод
ProtectYourSite, draff
Спасибо! Буду пробовать.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Работа с шаблоном два шаблона 1 сайт

Автор kolya89

Ответов: 8
Просмотров: 226
Последний ответ 04.04.2020, 09:09:21
от draff
Как вывести название группы дополнительных полей на фронте сайта?

Автор SolopoV

Ответов: 2
Просмотров: 109
Последний ответ 23.03.2020, 07:23:27
от SolopoV
Ссылка на материал в своем шаблоне категории

Автор lgmax

Ответов: 2
Просмотров: 71
Последний ответ 13.03.2020, 10:33:58
от lgmax
Вывести id категории в Joomla 3 через Php!

Автор pro777

Ответов: 23
Просмотров: 452
Последний ответ 12.03.2020, 11:14:13
от robert
Блог категории не с первого материала

Автор joy smile

Ответов: 1
Просмотров: 107
Последний ответ 11.03.2020, 20:28:38
от rsn