Новости Joomla

Перевод и публикация интервью с Joomla евангелистом на греческом портале Joomla

Перевод и публикация интервью на греческом портале Joomla 🇬🇷

Утро, просматриваешь входящие письма и изучаешь новости и внезапно обнаруживаешь, что инициатива, которую ты начал, подхватывается другими людьми. 🎉

Недавно я взял интервью у Билла (Василиса) Коциаса - руководителя студии, читающего лекции в университете и популяризатора Joomla в Греции. Это интервью из журнала NorrNext, в оригинале на английском, теперь доступно на греческом языке и опубликовано на портале joomla.gr. 🎉

До чего же приятно… 😇😊 Работа замечена и с ней посчитали необходимым ознакомить аудиторию страны, в которой Билл читает лекции. И это солнечная Греция - страна, страна, с которой Россию многое связывает. 🇬🇷🇷🇺🕊

Смотрю на греческий алфавит и тут же рисуются картины белоснежных зданий в окружении винограда и амфор, красивых женщин в сандалиях и мужественных воинов, охраняющих покой полисов, в которых ученые мужи работают над трудами, позже вошедшими в века. Красиво! 😇Но вернемся к интервью.

Из него вы узнаете, что в Греции доля Joomla среди CMS занимает порядка 30-40%. По моему мнению это - самый высокий показатель во всем мире. Также чтение лекций о Joomla в университетах позволит привести новых пользователей и к тому же молодое поколение. Ну и огромное кол-во сертификтатов Билла на стене (смотрим фото в статье) свидетельствует о том, что Joomla может применяться как профессиональный инструмент.

🌐 Оригинальное интервью (на английском)
🇬🇷 Интервью на греческом портале (joomla.gr)

Что насчет перевода на русский? Увы, времени всего 24 часа в сутках. Я продолжаю готовить новые интервью. Возможно, после завершения выпуска журнала, рассмотрю перевод некоторых интервью на русский. Но я об этом не говорил. 😊 В блоге @eugenius_blog публикую анонсы интересных событий из мира Joomla, интервью, уроки и полезные советы, а также делюсь мыслями:, связанными с разработкой и веб-дизайном.

Обработка HTTP ответа в Joomla 6+. Изменения по сравнению с Joomla 3 - Joomla 5

👩‍💻 Обработка HTTP ответа в Joomla 6+. Изменения по сравнению с Joomla 3 - Joomla 5.В Joomla для выполнения внешних запросов из PHP к сторонним API используется класс Joomla\Http\Http напрямую или же Joomla\Http\HttpFactory, который возвращает для работы преднастроенный по умолчанию класс Http. О работе с HTTP-запросами подробно рассказывалось в статье 2021 года Создание внешних запросов с использованием HttpFactory (Joomla). Некоторые изменения касаются работы с ответами на запросы. Например, наш запрос:
use Joomla\Http\HttpFactory;$http = (new HttpFactory)->getHttp($options, ['curl', 'stream']);$response = $http->get('https://any-url.ru/api/any/endpoint');
Раньше можно было получить код ответа или тело ответа как свойство $response - $response->code или $response->body. Однако, Joomla, начиная с Joomla 4 во многом переходит на стандарты PSR. В частности для работы с HTTP-ответами - на PSR-7. Также хорошая статья на Хабре о PSR-7: PSR-7 в примерах.
Прямое обращение к свойствам code, headers, body объявлено устаревшим в Joomla 6.0.0 и обещают удалить в Joomla 7.0.0.
Вместо этого нужно работать с HTTP-ответом по стандартам PSR-7. Код ответа.Было $response->code. Стало $response->getStatusCode().Заголовки ответа.Было $response->headers. Стало $response->getHeaders().Тело ответа.Было $response->body. Стало (string)$response->getContents().В тело ответа теперь приходит не строка, а поток - объект класса Laminas\Diactoros\Stream. Поэтому его нужно привести к строке (если это json, к примеру): (string)$response->getContents(). Чаще всего в коде Joomla встречается именно такой вариант. Однако, есть и вариант с перемещением указателя чтения на начало потока:
// Получили ответ в виде потока$stream = $response->getBody();// "перемотали" на начало$stream->rewind();// Получили строковый ответ$json = $stream->getContents();
В итоге результат одинаковый.@joomlafeed#joomla #разработка #php

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

Филипп Сорокин

  • Завсегдатай
  • 1918
  • 160 / 4
  • разработчик.москва
«Расширенная регистрация и логин» – это плагин, расширяющий стандартные возможности регистрации и входа, позволяющий упростить эти процессы и внести удобство в обслуживание пользовательского аккаунта. Возможности:

  • Вход по адресу электронной почты
  • Регистрация и вход на одной странице – совмещённые формы регистрации и входа
  • Email пользователя – как логин, скрытие поля "логин" в формах регистрации и профиля
  • Скрытие полей подтверждения пароля и электронной почты в формах регистрации и профиля
  • Скрытие поля «Имя» в формах регистрации и профиля

Совместимость: Joomla! 3.x
Категория: бесплатное расширение с платной поддержкой

Версия 1.1

По заявкам желающих введена новая опция "Удаление поля «Имя»" при регистрации и в профиле пользователя. Теперь можно сделать всего 2 обязательных поля -- email и пароль. Проще некуда.

Страница загрузки
Демо (можно регистрироваться и авторизоваться)
« Последнее редактирование: 17.01.2019, 16:28:57 от Филипп Сорокин »
*

Septdir

  • Живу я здесь
  • 3370
  • 168 / 4
Вот если бы авторизация\регистрация\подтверждение по номеру телефона =)
Не можете справиться с задачей сами пишите, решу ее за вас, не бесплатно*.
*Интересная задача, Деньги или Бартер. Натурой не беру!
CodersRank | Контакты | Мой GitHub | Workshop
*

Филипп Сорокин

  • Завсегдатай
  • 1918
  • 160 / 4
  • разработчик.москва
Вот если бы авторизация\регистрация по номеру телефона =)

Можно сделать -- почему нет? Благодарю за идею.
*

Septdir

  • Живу я здесь
  • 3370
  • 168 / 4
Можно сделать -- почему нет? Благодарю за идею.
Да не за что =)
Не можете справиться с задачей сами пишите, решу ее за вас, не бесплатно*.
*Интересная задача, Деньги или Бартер. Натурой не беру!
CodersRank | Контакты | Мой GitHub | Workshop
*

Akeksandr

  • Захожу иногда
  • 396
  • 12 / 0
А ещё регистрация в момент заказа.  ;)
*

Septdir

  • Живу я здесь
  • 3370
  • 168 / 4
А ещё регистрация в момент заказа. 
Какого заказа? в Joomla нет заказов
Не можете справиться с задачей сами пишите, решу ее за вас, не бесплатно*.
*Интересная задача, Деньги или Бартер. Натурой не беру!
CodersRank | Контакты | Мой GitHub | Workshop
*

Филипп Сорокин

  • Завсегдатай
  • 1918
  • 160 / 4
  • разработчик.москва
Какого заказа? в Joomla нет заказов
Скорее всего JoomShopping или VirtueMart. Здесь уже индивидуальный подход нужен, хотя работы на час примерно.
*

Akeksandr

  • Захожу иногда
  • 396
  • 12 / 0
Скорее всего JoomShopping или VirtueMart. Здесь уже индивидуальный подход нужен, хотя работы на час примерно.
Именно. Ссори, не уточнил. Как-то быстро прочитал и ответил.
*

djumfan

  • Захожу иногда
  • 243
  • 13 / 0
Плагин зачётный: меньше полей - больше регистраций.

Возможно не по теме, но задам вопрос.
У меня проблема - перенаправление пользователя после авторизации. Родной джумловский модуль авторизации после авторизации перенаправляет на указанный в настройках пункт меню или по умолчанию на джумловский профиль пользователя.
Мне нужно чтобы пользователь после авторизации оставался на той странице на которой он входит на сайт.
Можно ли в плагине реализовать настройку на джумловский модуль авторизации, чтобы после авторизации пользователь оставался на той странице с которой он авторизируется? Или это проблема модуля и нужно делать отдельный модуль авторизации?
*

Филипп Сорокин

  • Завсегдатай
  • 1918
  • 160 / 4
  • разработчик.москва
Я добавлю эту настройку. Модуль для этого не нужен.
*

djumfan

  • Захожу иногда
  • 243
  • 13 / 0
Спасибо! Думаю у многих проблема с этим перенаправлением.

Ещё заметил опечатку в настройках плагина:
Удалить поле подрверждения - в двух пунктах и в сплывающих подсказках к ним.
*

Филипп Сорокин

  • Завсегдатай
  • 1918
  • 160 / 4
  • разработчик.москва
Спасибо! Думаю у многих проблема с этим перенаправлением.

Ещё заметил опечатку в настройках плагина:
Удалить поле подрверждения - в двух пунктах и в сплывающих подсказках к ним.

Ну конечно, логично возвращаться на ту страницу, с которой пришёл. Это отличная поправка. В следующей версии добавлю перенаправление и вход по телефону (без подтверждения пока).
*

Septdir

  • Живу я здесь
  • 3370
  • 168 / 4
Спасибо! Думаю у многих проблема с этим перенаправлением.
Ну вообще это лечиться =)
и вход по телефону (без подтверждения пока).
Ну уже большое подспорье.
Не можете справиться с задачей сами пишите, решу ее за вас, не бесплатно*.
*Интересная задача, Деньги или Бартер. Натурой не беру!
CodersRank | Контакты | Мой GitHub | Workshop
*

Филипп Сорокин

  • Завсегдатай
  • 1918
  • 160 / 4
  • разработчик.москва
Это не лечиться и не лечится без специальной пилюли. Но функционал реально нужный.
*

Septdir

  • Живу я здесь
  • 3370
  • 168 / 4
Это не лечиться и не лечится без специальной пилюли.
Лечиться даже в переопределении. Если мы говорим о стандартном модуле
Код
<?php
$url = JUri::getInstance()->toString();
$return = base64_encode($url);
?>
<input type="hidden" name="return" value="<?php echo $return; ?>" />

Кстати вообще-то судя по хелперу он должен и так работать, просто как всегда, где-то накосячили.
Код
	/**
* Retrieve the URL where the user should be returned after logging in
*
* @param   \Joomla\Registry\Registry  $params  module parameters
* @param   string                     $type    return type
*
* @return string
*/
public static function getReturnUrl($params, $type)
{
$app  = JFactory::getApplication();
$item = $app->getMenu()->getItem($params->get($type));

// Stay on the same page
$url = JUri::getInstance()->toString();

if ($item)
{
$lang = '';

if ($item->language !== '*' && JLanguageMultilang::isEnabled())
{
$lang = '&lang=' . $item->language;
}

$url = 'index.php?Itemid=' . $item->id . $lang;
}

return base64_encode($url);
}
Не можете справиться с задачей сами пишите, решу ее за вас, не бесплатно*.
*Интересная задача, Деньги или Бартер. Натурой не беру!
CodersRank | Контакты | Мой GitHub | Workshop
*

Septdir

  • Живу я здесь
  • 3370
  • 168 / 4
О кстати вспомнил. Было бы еще здорово "Вход сразу после регистрации"(autologin) чтобы не вбивать логин и пароль, если не включено подтверждение. Даже реализации этой штуки есть, но ведь лучше когда все в одном месте =)

И соц сети, и объединения форма и телефоны и авто вход. Поставил и все что вообще может понадобиться уже есть.
Если еще к соц сетям присобачить автозаобленние com_users/com_fields то вообще здорово(ну это уже совсем если больше делать нечего)
Не можете справиться с задачей сами пишите, решу ее за вас, не бесплатно*.
*Интересная задача, Деньги или Бартер. Натурой не беру!
CodersRank | Контакты | Мой GitHub | Workshop
*

Филипп Сорокин

  • Завсегдатай
  • 1918
  • 160 / 4
  • разработчик.москва
Автологин - прекрасное предложение.

Не лечится возвратный урл во вьюхе входа, а уж тем более регистрации. Модуль - да, он потому что модуль, доступен на всех страницах.
*

Septdir

  • Живу я здесь
  • 3370
  • 168 / 4
Не лечится возвратный урл во вьюхе входа, а уж тем более регистрации. Модуль - да, он потому что модуль, доступен на всех страницах.
В логине есть ретурн. Берётся из get параметра return , главное его передать. А вот с регистрацией беда.
Я такие велосипеды делал.  С редиректами и сессиями.
« Последнее редактирование: 29.11.2017, 00:01:13 от Septdir »
Не можете справиться с задачей сами пишите, решу ее за вас, не бесплатно*.
*Интересная задача, Деньги или Бартер. Натурой не беру!
CodersRank | Контакты | Мой GitHub | Workshop
*

Филипп Сорокин

  • Завсегдатай
  • 1918
  • 160 / 4
  • разработчик.москва
Ну сессии не велосипеды, вполне приличное решение. А ретурн я буду через роутер делать.
*

Septdir

  • Живу я здесь
  • 3370
  • 168 / 4
Ну сессии не велосипеды, вполне приличное решение.
Ну у меня именно велосипед причем как он работает я не мало понимаю. Писал ночью и очень быстро. Кстати до сих пор он работает. Все руки не доходят поправить.

А ретурн я буду через роутер делать.
Это правильно.
Не можете справиться с задачей сами пишите, решу ее за вас, не бесплатно*.
*Интересная задача, Деньги или Бартер. Натурой не беру!
CodersRank | Контакты | Мой GitHub | Workshop
*

djumfan

  • Захожу иногда
  • 243
  • 13 / 0
Хочу извиниться за внесённую мною дезинформацию - жутко виноват.
На данный момент модуль авторизации джумла при авторизации по умолчанию оставляет пользователя на исходной странице сайта. Я момент когда это исправили упустил, наверно в 3,7 с полями поправили, возможно раньше. У меня модуль переопределён (добавлены аватар, кнопки, ссылки) и поэтому я упустил тот момент когда исправили перенаправление.
Прошу меня извинить.
*

Septdir

  • Живу я здесь
  • 3370
  • 168 / 4
Хочу извиниться за внесённую мною дезинформацию - жутко виноват.
На данный момент модуль авторизации джумла при авторизации по умолчанию оставляет пользователя на исходной странице сайта. Я момент когда это исправили упустил, наверно в 3,7 с полями поправили, возможно раньше. У меня модуль переопределён (добавлены аватар, кнопки, ссылки) и поэтому я упустил тот момент когда исправили перенаправление.
Прошу меня извинить.
Да он и сейчас работат через раз. Так что извиняться не за что. Но разговор все таки не о модуле, а о регистрации и логине. Ибо если требуеться авторизация перекидывает именно на страницу. И если редирект при логине работает, то при регистрации не предусмотрен.
Не можете справиться с задачей сами пишите, решу ее за вас, не бесплатно*.
*Интересная задача, Деньги или Бартер. Натурой не беру!
CodersRank | Контакты | Мой GitHub | Workshop
*

djumfan

  • Захожу иногда
  • 243
  • 13 / 0
Да он и сейчас работает через раз. Так что извиняться не за что.
Возможно через раз. Я просто на тестовом сайте на разных страницах пару раз попробовал - авторизирует оставляя на странице. Вот и решил извиниться, чтобы время чужое не тратить напрасно.
*

Fess_N

  • Осваиваюсь на форуме
  • 17
  • 0 / 0
Ну зато обратили внимание на проблему - у некоторых то она есть - может и решение предложат)
*

djumfan

  • Захожу иногда
  • 243
  • 13 / 0
Ну зато обратили внимание на проблему - у некоторых то она есть - может и решение предложат)
Да, согласен.
На предыдущих версиях проблема с перенаправлением точно есть, а сайтов которые не обновляются по разным причинам - очень много.
*

djumfan

  • Захожу иногда
  • 243
  • 13 / 0
Так как все крупные сайты от соцсетей до больших порталов работают с авторизацией через мыло, решил не отставать и несмотря на большое количество уже давно зарегистрированных пользователей, тоже перешёл на основном своём сайте на авторизацию через емаил.
После установки и настройки плагина начал зачищать следы от логина (сам плагин работает - проблем нет).

Если для модуля авторизации всё понятно и нужно переопределить языковую константу
MOD_LOGIN_VALUE_USERNAME
чтобы запрашивать емаил а не логин, то возникла проблема с формой авторизации, показываемой сайтом если страница доступна только авторизированным. Это к URL добавляется ?view=login Можно попасть при разлагировании на странице профиля.
Внизу есть таб - Забыли логин? - Думаю что теперь он не нужен.

Сам файл нашёл:
www\components\com_users\views\login\tmpl\default_login.php

Но переопределяю его неправильно:
www\templates\name\html\com_users\views\login\tmpl\default_login.php

Пробовал двигать файл по иерархии, но что то переопределение не срабатывает. Его же можно переопределить в шаблон?
*

Филипп Сорокин

  • Завсегдатай
  • 1918
  • 160 / 4
  • разработчик.москва
Цитировать
Его же можно переопределить в шаблон?

Можно. Но не так. Вы имеете в виду совмещённый макет? Создайте файл default_combined.php
*

djumfan

  • Захожу иногда
  • 243
  • 13 / 0
Можно. Но не так. Вы имеете в виду совмещённый макет? Создайте файл default_combined.php
Нет, я совмещённый макет не использую.

Мне нужно переопределить вот этот файл:
www\components\com_users\views\login\tmpl\default_login.php

Это родной файл Joomla.
Если я его редактирую, то изменения появляются.
На страницах, где доступ только для авторизированных, если не залогинен вылазит вот такая форма:




Вот внизу формы есть: Забыли пароль? - Хочу это удалить.
*

djumfan

  • Захожу иногда
  • 243
  • 13 / 0
А что касается самого плагина упрощённой регистрации, то после установки новые регистрации на сайте идут. И что заметно, новые пользователи проявляют активность поболее чем это было раньше. Возможно луна в нужной фазе, а возможно меньше полей при регистрации оставляют силы юзерам для активности на сайте.
В общем круть, но форму как то нужно переопределить. А совмещённый макет слишком габаритно для меня. Я хочу "Ещё нет учётной записи?" заменить на "Регистрация". Кому нужно, тот перейдёт на регистрацию.
*

Филипп Сорокин

  • Завсегдатай
  • 1918
  • 160 / 4
  • разработчик.москва
@djumfan, если совмещённый макет не используется, то плагин никак не влияет на вид. Вам нужно переопределить макеты так, как они обычно переопределяются для других компонентов.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

SM FAQ - компонент Вопрос-Ответ для Joomla 2.5+

Автор SmokerMan

Ответов: 682
Просмотров: 156383
Последний ответ 11.10.2025, 12:43:44
от wishlight
SW JProjects - Менеджер цифровых проектов для Joomla! CMS™

Автор Septdir

Ответов: 60
Просмотров: 18233
Последний ответ 13.09.2025, 19:12:05
от sergeytolkachyov
JSLazyLoading — плагин для отложенной (ленивой) загрузки и мультивывода изображений

Автор Филипп Сорокин

Ответов: 36
Просмотров: 19563
Последний ответ 10.08.2025, 13:17:43
от kaaaaaljan
WT Telegram bot - отправка данных из Joomla в Telegram-бота

Автор sergeytolkachyov

Ответов: 4
Просмотров: 3466
Последний ответ 01.08.2025, 09:26:57
от sergeytolkachyov
Модуль вывода новостей. Joomla 3.x

Автор fbr

Ответов: 54
Просмотров: 29350
Последний ответ 22.07.2025, 10:13:22
от fbr