Новости Joomla

Joomla 6 нуждается в вашей помощи с тестированием.Вышел недавно релиз Joomla 6 alpha1

Joomla 6 нуждается в вашей помощи с тестированием.Вышел недавно релиз Joomla 6 alpha1

👩‍💻 Joomla 6 нуждается в вашей помощи с тестированием.Вышел недавно релиз Joomla 6 alpha1. Это релиз, в который включены уже проверенные изменения, но ещё очень многие исправления и улучшения ждут своей очереди. Joomla следит за качеством и безопасностью своего кода и каждое изменение должно быть успешно протестировано как минимум ещё двумя участниками сообщества. Разработка Joomla ведётся на платформе GitHub.Филипп Уолтон (Philip Walton) - один из разработчиков, кто активно вносит свой вклад в ядро Joomla. Он уже несколько месяцев посвящает свои послеполуденные часы пятницы работе с Joomla и предлагает присоединиться к нему. 📆 Пятница, 30 мая 2025, с 15:00 до 17:00 по UTC (Лондон) - с 18:00 до 20:00 по Москве.В чате Google Meet Филипп готов помочь с тестированием тем, кто будет делать это в первый раз. А так же он подготовил список лёгких Pull Request, которые можно протестировать довольно быстро. Чем больше тестов будет проведено сейчас, тем меньше ошибок вылезет потом. На данный момент 148 (уже 147 на момент написания заметки) PR на GitHub Joomla ждут тестирования.👩‍💻 Open to all. All together.Также вам поможет сделать первые шаги это видео.GitHub JoomlaДа, это вечер пятницы. Но тестирование занимает порой минут 15, а доброе дело сделано. Просто убедитесь, что разработчик чего-то не пропустил и всё работает как ожидается.#joomla #joomla6 #community

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

Vlad1

  • Захожу иногда
  • 99
  • 0 / 0
Всем привет!

Подскажите, пожалуйста, по следующему вопросу.

Есть список материалов, в каждом из которых имеется Дополнительное поле, например, с id=5.
Есть модуль в Сайдбаре, который отображается только на странице материала (не в списке материалов, но это не важно).
Задача, чтобы в модуле в сайдбаре отображалось значение Дополнительного поля для каждого конкретного материала.

Пробовал так:
<?php echo($this->item->jcfields[5]->value); ?>

Результат - белый экран.

В идеале задача шире: пытаюсь внедрить API парсер курсов. Хотел, чтобы бралось значение конкретного поля в текущем материале и подставлялся в запрос к массиву из API.
*

sivers

  • Живу я здесь
  • 2578
  • 357 / 0
Задача, чтобы в модуле в сайдбаре отображалось значение Дополнительного поля для каждого конкретного материала.
Предложу пару вариантов как делал бы сам:
1. В модуле читать ИД материала ($app->input->getInt('id');) и по нему из БД вытаскивать значение доп.поля (оно там как раз к ИД материала + ИД поля привязано).
2. Если не боитесь глобальных переменных, то в макете материала объявляете глобальную переменную и вписываете в нее весь материал или только ваше доп.поле. В модуле обращаетесь к этой глобальной переменной и читаете ее. Кто не любит глобальные переменные - можно использовать константу. В любом случае сперва желательно проверять существование константы (или гл.переменной), а потом уже к ней обращаться.

Кстати, не так давно (1-2 мес. назад) точно такой вопрос уже задавали и ответ был получен - поищите.
На связи в telegram @sivers
sivers @ inbox . ru
https://sivers.su/
*

Vlad1

  • Захожу иногда
  • 99
  • 0 / 0
Предложу пару вариантов как делал бы сам:
1. В модуле читать ИД материала ($app->input->getInt('id');) и по нему из БД вытаскивать значение доп.поля (оно там как раз к ИД материала + ИД поля привязано).

sivers, благодарю! Первую часть по Вашей наводке сделал и понял, куда копать.
Вторую часть (вывод поля по известному ID материала) нашел на англоязычном форуме Joomla!, где решение предложил effrit.

В итоге сделал так:
Код
<?php

// Получаем ID материала
$app  = JFactory::getApplication();
$id_article = $app->input->getInt('id');
echo $id_article;

// Получаем конкретное поле из этого материала
$db = JFactory::getDbo();
$query = 'select * from #__fields_values where item_id = "'.$id_article.'"';
$db->setQuery($query);
$fields = $db->loadObjectList();

foreach ($fields as $field) {
if ($field->field_id == 5) { // 5 - ID поля
echo $field->value;
}
}

?>

У меня работает. Не знаю, правда, насколько рационален код.
« Последнее редактирование: 01.06.2021, 00:18:16 от Vlad1 »
*

sivers

  • Живу я здесь
  • 2578
  • 357 / 0
У меня работает. Не знаю, правда, насколько рационален код.
Этот способ хорош тем, что не зависит от страницы (если только у вас есть ИД материала). Если же использовать передачу через глобальные переменные (или константы), то можно обойтись бэз запроса к БД. Хотя и запрос там не особо тяжелый, особенно если материалов не много.

Кстати, запрос, который вы нашли, читает все поля материала. Если в модуле надо выводить только одно поле (с ИД = 5), то лучше и тянуть из БД только его:
Код
$query = 'select value from #__fields_values where field_id = 5 AND item_id = "'.$id_article.'"';
$db->setQuery($query);
$fieldValue = $db->loadResult();
На связи в telegram @sivers
sivers @ inbox . ru
https://sivers.su/
*

Vlad1

  • Захожу иногда
  • 99
  • 0 / 0

Кстати, запрос, который вы нашли, читает все поля материала. Если в модуле надо выводить только одно поле (с ИД = 5), то лучше и тянуть из БД только его:
Код
$query = 'select value from #__fields_values where field_id = 5 AND item_id = "'.$id_article.'"';
$db->setQuery($query);
$fieldValue = $db->loadResult();

Принято к сведению, исправил, спасибо!
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Вывести поля профиля Joomla

Автор romagromov

Ответов: 11
Просмотров: 1698
Последний ответ 28.04.2025, 10:25:44
от sivers
Вывести модуль в модуле

Автор jimka

Ответов: 2
Просмотров: 594
Последний ответ 18.04.2025, 15:39:36
от fbr
[Решено] Вывод значений из custom fields материала в модуле по имени поля

Автор goga_pgasovav

Ответов: 3
Просмотров: 951
Последний ответ 30.12.2024, 13:22:11
от goga_pgasovav
Вывод содержимого модуля mod_custom без html разметки

Автор goga_pgasovav

Ответов: 3
Просмотров: 983
Последний ответ 07.06.2024, 11:15:50
от goga_pgasovav
Как вставить модуль в код нужной страницы php?

Автор zvi

Ответов: 9
Просмотров: 4659
Последний ответ 21.02.2024, 11:03:08
от saynez