Новости 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 Гость просматривают эту тему.
  • 10 Ответов
  • 1824 Просмотров
*

ilunga

  • Осваиваюсь на форуме
  • 41
  • 0 / 0
Доброго дня.

Вставляю модуль в шаблон компонента через модульную позицию.
Конкретнее: вставляю плеер в форумный профиль юзера, использую стандартную схему.

Код: php
<?php
jimport( 'joomla.application.module.helper' );
$module = JModuleHelper::getModules('our-module');
$attribs['style'] = 'xhtml';
echo JModuleHelper::renderModule($module[0], $attribs);
?>

Всё выводится корректно, без проблем.

Но необходимо изменить одну переменную (путь к именной папке юзера), которая задаётся внутри вставляемого модуля.
Поэтому в принимающем шаблоне я объявляю переменную ДО кода позиции:

Код: php
$userProfile = JFactory::getUser($profile->id)->username;

А в коде встраиваемого модуля устанавливаю условие, которое должно менять значение модульной переменной ($nmapdir), если модуль работает на странице профиля:

Код: php
if (isset($userProfile) ) {
   $nmapdir = 'mp3/' . $userProfile;
} else {
   ...
}

Я ожидаю, что при загрузке модуля в компонент уже объявленная выше переменная ($userProfile) будет прочитана, и сработает условие. Само по себе условие работает (проверял прямой вставкой переменной в код модуля).

Но загружаемый модуль не видит эту переменную в упор, если она находится в принимающем файле. Я пробовал её объявлять и как глобальную, вставлять в разные места - до, внутрь и после кода позиции, но безрезультатно.

Подскажите пожалуйста, как заставить встроенный в позицию шаблона модуль увидеть переменную из этого шаблона?
*

ilunga

  • Осваиваюсь на форуме
  • 41
  • 0 / 0
Как передать переменную из компонента в модуль
да, спасибо.

Но после применения этого метода возникла частная проблема в работе условия: оно не работает, если одновременно открыты две страницы с модулем (одна из которых в компоненте) - видимо, потому, что переменная присутствует на обоих?
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
Но после применения этого метода возникла
там несколько решений около 5. Пробуйте остальные. К примеру
Код: php-brief
//устанавливаем
$doc = JFactory::getDocument();
$doc->test = 'AAAA';
// и нужном месте выводить
$doc = JFactory::getDocument();
echo $doc->test; // AAAA'
*

ilunga

  • Осваиваюсь на форуме
  • 41
  • 0 / 0
там несколько решений около 5. Пробуйте остальные.
спасибо.
В силу моего очень поверхностного знания php, я мало понял вашу запись,
но решил эту проблему методом назначения пустого значения переменной в сессии после её использования.   
*

ilunga

  • Осваиваюсь на форуме
  • 41
  • 0 / 0
у меня остался по этой теме один соседний вопрос:

методом
Код: php
JFactory::getUser($profile->id)->username
удаётся получить только id, name, username, email.
Но не удаётся получить usertype и gid.

А мне нужно выводить модуль для всех групп, кроме одной (чей id=11).
Всё уже работает, только это условие хромает :(

Как получить usertype и gid в Joomla 3.x?

Посмотрел тут, но мало чего понял:
How to get a users usergroup?$user->get('usertype')depricate
« Последнее редактирование: 07.11.2015, 18:13:17 от ilunga »
*

passer

  • Завсегдатай
  • 1013
  • 75 / 3
Смотрите не через echo, а через var_dump()
Видимо usertype и gid не строка, а массив или обьект.
Код: php
var_dump(JFactory::getUser($profile->id)->usertype);
*

ilunga

  • Осваиваюсь на форуме
  • 41
  • 0 / 0
Смотрите не через echo, а через var_dump()
Видимо usertype и gid не строка, а массив или обьект.
это, конечно, так. Но такой код выдаёт NULL.
« Последнее редактирование: 07.11.2015, 18:39:30 от ilunga »
*

passer

  • Завсегдатай
  • 1013
  • 75 / 3
Код: php
var_dump(JFactory::getUser($profile->id));
*

ilunga

  • Осваиваюсь на форуме
  • 41
  • 0 / 0
Код: php
var_dump(JFactory::getUser($profile->id));
да, очень-очень спасибо.

Рабочий код получается типа такого:
Код: php
<?php $UserProfile = JFactory::getUser($profile->id);
if(in_array(11, $UserProfile->groups)): ?>

Осталась сущая малость - обратить условие: не группа id=11, а все  группы, кроме 11.
Но не знаю, как это сделать.
Или просто перечислить все группы?
« Последнее редактирование: 07.11.2015, 19:37:58 от ilunga »
*

passer

  • Завсегдатай
  • 1013
  • 75 / 3
Код: php
if(!in_array(11, $UserProfile->groups)):
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Пример создания модуля с прикреплением файлов

Автор Zelyonkin

Ответов: 7
Просмотров: 866
Последний ответ 02.08.2021, 17:04:15
от Zelyonkin
Отображение модуля меню на странице материала

Автор kunsaid

Ответов: 9
Просмотров: 965
Последний ответ 21.07.2021, 10:50:29
от kunsaid
[Решено] CSS-класс заголовка модуля

Автор schel4ok

Ответов: 36
Просмотров: 18416
Последний ответ 06.04.2021, 23:35:20
от Wak
Добавление модуля в шапку

Автор Bazaroff

Ответов: 8
Просмотров: 712
Последний ответ 18.01.2021, 19:59:58
от AlexB
Проблемы с ajax при выводе модуля

Автор Lemonez

Ответов: 6
Просмотров: 711
Последний ответ 21.12.2020, 05:16:55
от draff