Новости 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

Quantum Manager нужен сообществу, а автору нужна ваша поддержка!

Quantum Manager нужен сообществу, а автору нужна ваша поддержка!Файловый менеджер Quantum — одно...

Файловый менеджер Quantum — одно из самых популярных решений для Joomla, созданное разработчиком из сообщества Joomla, Дмитрием Цымбалом (@tsymbalmitia). Он делает Quantum удобным, безопасным и современным, обновляет его, исправляет уязвимости и отвечает пользователям — всё это в свободное от основной работы время.

Теперь настал момент для следующего шага: развитие проекта требует больше времени и ресурсов.

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

a2618

  • Новичок
  • 8
  • 0 / 0
Здравствуйте, понадобтлось добавить дополнительно поле при регистрации, нашел эту тему http://joomlaforum.ru/index.php/topic,44640.0.html. Все прекрасно, поле добавил, работает. И тут столкнулся с такой проблемой, при редактировании своего профиля не видно добавленого мной поля что и где надо прописать, куда копать? в PHP не силен =(
*

ipsum

  • Новичок
  • 8
  • 0 / 0
  • Иногда способ научного тыка творит чудеса!
Re: новое поле в форме регистрации
« Ответ #1 : 03.07.2010, 23:18:42 »
Та же проблема   !
 ! - Помогите разобраться, не видно добавленного мной поля в регистрационной форме
нового пользователя на сайте. При заполнении стандартной формы не сохраняется и требует
ввести обязательное поле city. А его нет.
   В панели администрирования при этом всё нормально: поле есть.

Добавляем поле в форму регистрации:
Файл components\com_user\views\register\tmpl\default.php - в таблицу с формой добавляем новую строку после Username
Код
<tr>
   <td height="40">
      <label id="citymsg" for="city">
         <?php echo JText::_( 'City' ); ?>:
      </label>
   </td>
   <td>
      <input type="text" id="city" name="city" size="40" value="<?php echo $this->user->get( 'city' );?>" class="inputbox required validate-city" maxlength="25" /> *
   </td>
</tr>

Может сдесь есть ошибка ?
« Последнее редактирование: 04.07.2010, 00:07:47 от ipsum »
*

a2618

  • Новичок
  • 8
  • 0 / 0
Re: новое поле в форме регистрации
« Ответ #2 : 04.07.2010, 11:42:11 »
Та же проблема   !
 ! - Помогите разобраться, не видно добавленного мной поля в регистрационной форме
нового пользователя на сайте. При заполнении стандартной формы не сохраняется и требует
ввести обязательное поле city. А его нет.
   В панели администрирования при этом всё нормально: поле есть.

Добавляем поле в форму регистрации:
Файл components\com_user\views\register\tmpl\default.php - в таблицу с формой добавляем новую строку после Username
Код
<tr>
   <td height="40">
      <label id="citymsg" for="city">
         <?php echo JText::_( 'City' ); ?>:
      </label>
   </td>
   <td>
      <input type="text" id="city" name="city" size="40" value="<?php echo $this->user->get( 'city' );?>" class="inputbox required validate-city" maxlength="25" /> *
   </td>
</tr>

Может сдесь есть ошибка ?

Ошибки никакой нет, просто надо править не 1 фаил, а три как здесь http://joomlaforum.ru/index.php/topic,44640.0.html  и все работает поля добовляються и при реге их видно, их не видно когда пытаешся редактировать профиль, я так понимаю надо еще что-то где-то добавить, вот только где?
*

volod3000

  • Захожу иногда
  • 379
  • 51 / 0
  • Чтобы ничего не делать, нужно многое сделать.
Мало открыть человеку глаза,
большинство еще просит указать дорогу
и ждет волшебного пенделя.
*

ipsum

  • Новичок
  • 8
  • 0 / 0
  • Иногда способ научного тыка творит чудеса!
Re: новое поле в форме регистрации
« Ответ #4 : 04.07.2010, 16:03:19 »
Я все сделал правельно  все работает !
После того как отключил компонент AlphaRegistration.
Все Поля есть и редактируются.
Но как теперь поставить reCaptcha. crazy!

Пашол копать дальше !
*

GDV

  • Завсегдатай
  • 1898
  • 201 / 5
Re: новое поле в форме регистрации
« Ответ #5 : 04.07.2010, 16:07:08 »
Есть плагины CAPTCHA отдельные. Ставятся на стандартную регу. А зачем именно реCAPTCHA?
От нее давно толка нет. Взломали хрумерами уже давненько.
Убедительная просьба не писать в ЛС. Для решения Ваших проблем есть форум.
*

a2618

  • Новичок
  • 8
  • 0 / 0
Re: новое поле в форме регистрации
« Ответ #6 : 05.07.2010, 11:28:10 »
Я все сделал правельно  все работает !
После того как отключил компонент AlphaRegistration.
Все Поля есть и редактируются.
Но как теперь поставить reCaptcha. crazy!

Пашол копать дальше !

Как делал? по какой ссылке 1,2?
Не нашёл у себя такого компонента AlphaRegistration, он стандартный иль ты его отдельно ставил?
« Последнее редактирование: 05.07.2010, 17:59:12 от a2618 »
*

ipsum

  • Новичок
  • 8
  • 0 / 0
  • Иногда способ научного тыка творит чудеса!
Re: новое поле в форме регистрации
« Ответ #7 : 05.07.2010, 21:14:59 »
Делал по ссылке http://joomlaforum.ru/index.php/topic,44640.0.html
В точности как написано, всё работает.
компонента AlphaRegistration отдельно ставил.
кстате решил вопрос и скапчой надо в компоненте AlphaRegistration
/components/com_alpharegistration/views/register/tmpl/default.php
вставить : <tr>
   <td height="40">
      <label id="citymsg" for="city">
         <?php echo JText::_( 'City' ); ?>:
      </label>
   </td>
   <td>
      <input type="text" id="city" name="city" size="40" value="<?php echo $this->user->get( 'city' );?>" class="inputbox required validate-city" maxlength="25" /> *
   </td>
</tr>

и все заработало как надо.
кстате понравелось ещо одно решение вместо CAPTCHA читать здесьhttp://joomla-support.ru/post54330.html
Сщас пытаюсь разобратся.

Строго не судите за ответы, я только учусь! yes!
« Последнее редактирование: 05.07.2010, 21:19:43 от ipsum »
*

a2618

  • Новичок
  • 8
  • 0 / 0
Re: новое поле в форме регистрации
« Ответ #8 : 05.07.2010, 21:27:01 »
Делал по ссылке http://joomlaforum.ru/index.php/topic,44640.0.html
В точности как написано, всё работает.
компонента AlphaRegistration отдельно ставил.
кстате решил вопрос и скапчой надо в компоненте AlphaRegistration
/components/com_alpharegistration/views/register/tmpl/default.php
вставить : <tr>
   <td height="40">
      <label id="citymsg" for="city">
         <?php echo JText::_( 'City' ); ?>:
      </label>
   </td>
   <td>
      <input type="text" id="city" name="city" size="40" value="<?php echo $this->user->get( 'city' );?>" class="inputbox required validate-city" maxlength="25" /> *
   </td>
</tr>

и все заработало как надо.
кстате понравелось ещо одно решение вместо CAPTCHA читать здесьhttp://joomla-support.ru/post54330.html
Сщас пытаюсь разобратся.

Строго не судите за ответы, я только учусь!

Попробуй отредактировать добавленные поля через юзера, из под юзера у меня не видно этих полей (
*

ipsum

  • Новичок
  • 8
  • 0 / 0
  • Иногда способ научного тыка творит чудеса!
Re: новое поле в форме регистрации
« Ответ #9 : 05.07.2010, 21:45:39 »
Попробуй отредактировать добавленные поля через юзера, из под юзера у меня не видно этих полей (
Извини, а это как?
Не пойму что ты имеешь в виду.
*

a2618

  • Новичок
  • 8
  • 0 / 0
Re: новое поле в форме регистрации
« Ответ #10 : 05.07.2010, 21:51:20 »
Извини, а это как?
Не пойму что ты имеешь в виду.

Зарегестрируйся у себя на сайте, зайди на сайт под юзером и попробуй отредактировать свой прифиль, у меня нету полей которые я добовлял только стандартные есть (
*

ipsum

  • Новичок
  • 8
  • 0 / 0
  • Иногда способ научного тыка творит чудеса!
Re: новое поле в форме регистрации
« Ответ #11 : 05.07.2010, 22:13:35 »
Зарегестрируйся у себя на сайте, зайди на сайт под юзером и попробуй отредактировать свой прифиль, у меня нету полей которые я добовлял только стандартные есть (
Прикольно у меня тоже не было! :o
/components/com_user/views/user/tmpl/form.php
здесь вставил  <tr>
   <td height="40">
      <label id="citymsg" for="city">
         <?php echo JText::_( 'City' ); ?>:
      </label>
   </td>
   <td>
      <input type="text" id="city" name="city" size="40" value="<?php echo $this->user->get( 'city' );?>" class="inputbox required validate-city" maxlength="25" /> *
   </td>
</tr>
Всё работает :D
« Последнее редактирование: 05.07.2010, 22:28:16 от ipsum »
*

ipsum

  • Новичок
  • 8
  • 0 / 0
  • Иногда способ научного тыка творит чудеса!
Re: новое поле в форме регистрации
« Ответ #12 : 05.07.2010, 22:38:28 »
Ну что как дела, ПОМОГЛО ^-^
« Последнее редактирование: 05.07.2010, 22:42:39 от ipsum »
*

a2618

  • Новичок
  • 8
  • 0 / 0
Re: новое поле в форме регистрации
« Ответ #13 : 06.07.2010, 11:42:09 »
Прикольно у меня тоже не было! :o
/components/com_user/views/user/tmpl/form.php
здесь вставил  <tr>
   <td height="40">
      <label id="citymsg" for="city">
         <?php echo JText::_( 'City' ); ?>:
      </label>
   </td>
   <td>
      <input type="text" id="city" name="city" size="40" value="<?php echo $this->user->get( 'city' );?>" class="inputbox required validate-city" maxlength="25" /> *
   </td>
</tr>
Всё работает :D

Похоже мы с тобой говорим об одних и тех же вещах, но думаем о разных =)

При добавлении твоего кода у меня получаеться дубликат поля в админке, а при редактировании профиля из сайта да еще и под юзером полей нету см картинки.

рис 1 Редактирование из админки
рис 2 редактирование через сайт из под юзера

Как я понимаю надо куда-то добавить приведенный тобой код(что бы юзер мог менять значения новых полей), вот только куда я х.з. 3 дня голову ломаю =(


Да все работает, это я тупил и менял form.php по адресу админки (\www\administrator\components\com_users\views\user\tmpl\form.php) спс дружище =)
« Последнее редактирование: 06.07.2010, 12:50:04 от a2618 »
*

N2uM

  • Захожу иногда
  • 470
  • 20 / 0
Re: новое поле в форме регистрации
« Ответ #14 : 28.12.2011, 20:58:39 »
А как сделать что бы это поле было уникальным, например "Имя" если есть Вася Пупкин то второго Васи не судьба быть
Лучшее спасибо это "+" в карму
*

beliyadm

  • Легенда
  • 9758
  • 1665 / 66
  • Севастополь, Россия
Re: новое поле в форме регистрации
« Ответ #15 : 28.12.2011, 21:39:24 »
А как сделать что бы это поле было уникальным, например "Имя" если есть Вася Пупкин то второго Васи не судьба быть
В обработчик дописывать проверку и при совпадении выдавать ошибку.
На фронт можно еще сделать дополнительную проверку на клиенте, примеры кода можно посмотреть, к примеру, здесь
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

N2uM

  • Захожу иногда
  • 470
  • 20 / 0
Re: новое поле в форме регистрации
« Ответ #16 : 29.12.2011, 08:08:55 »
Тупанул немного... в регистрации уже есть поле имя, как её уникальным сделать? И можно с AJAX проверкой?  Я просто плохо пока разбираюсь...
Лучшее спасибо это "+" в карму
*

beliyadm

  • Легенда
  • 9758
  • 1665 / 66
  • Севастополь, Россия
Re: новое поле в форме регистрации
« Ответ #17 : 29.12.2011, 12:15:48 »
как её уникальным сделать? И можно с AJAX проверкой?
про проверку на AJAX я выше дал ссылки на решения
Обязательным - почитать controller компонента, найти аналог проверки на существование и дописать для своего поля
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Как расширить поле с текстом?

Автор jullizz

Ответов: 2
Просмотров: 1332
Последний ответ 09.06.2015, 09:09:26
от jullizz
[Решено] Защита от ботов при регистрации

Автор shaverma

Ответов: 11
Просмотров: 8607
Последний ответ 23.03.2015, 14:12:04
от AdmbVlad
Получить и вывести заголовок текущей страницы в форме заказа

Автор Dorfman

Ответов: 0
Просмотров: 1461
Последний ответ 18.03.2015, 12:07:41
от Dorfman
Добавление материала без регистрации

Автор zosimov

Ответов: 8
Просмотров: 1632
Последний ответ 21.10.2013, 12:45:59
от smart
После отключения регистрации в CommunityBuilder сбились размеры материалов

Автор piquick

Ответов: 2
Просмотров: 1217
Последний ответ 17.10.2013, 14:55:35
от piquick