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

Санчо

  • Захожу иногда
  • 239
  • 10 / 0
  • Алексей Харламенков
Моё почтение, уважаемые Коллеги!

Столкнулся с проблемой: нужно зарегистрировать на сайте множество пользователей с паролями, выдаваемыми администратором.

Саморегистрация запрещена; ручная регистрация затягивается на месяцы и оскорбляет пользователей.

Прошу помощи в решении этой проблемы.
*

Санчо

  • Захожу иногда
  • 239
  • 10 / 0
  • Алексей Харламенков
Istaan, спасибо!
Я ожидал, что решением будет внешний компонент.

Попрошу ещё.
К сожалению, я не программист, а, всего лишь "пользователь с навыками алгоритмизации", поэтому прошу Вас о законченном примере.
Я прочитал все комментарии к той статье, но, всё равно, остались вопросы:
  • как запустить этот скрипт из "Joomla!"? установив его как компонент? но тогда нужно сопутствующая обёртка... Или достаточно положить его в корень Joomla! и открыть его по абсолютному адресу?
  • зарегистрированному пользователю нужно отправить письмо с регистрационными данными, иначе это всё нужно будет делать вручную.
*

Aleks.Denezh

  • Живу я здесь
  • 3401
  • 428 / 4
Вставить например в index.php вашего шаблона сайта!
и вызвать sitename.ru/?task=massReg
Код: php
$input = JFactory::getApplication()->input;
if ( $input->getCmd( 'task' ) === 'massReg' ) {
$baseUrl = JUri::base();
$login = 'VasyaPupkin';
$password = 'passord1234';
$userEmail = 'vasyapupkin@ссылка вырезана, так как домен распространяет вирусы';
$user = new JUser;
$userData = array( 'name' => 'Вася Пупкин',
'username' => $login,
'password' => $password,
'password2' => $password,
'email' => '',
'groups' => array( 2 )
);
$user->bind( $userData );
if ( $user->save() ) {
//Если юзер зереген отпраяляем ему мыло что он зареген!
$config = JFactory::getConfig(); //получаем настройки сайта
$mailer = JFactory::getMailer(); //Получаем экземпляр класса JMail
$mailer->IsHTML( true ); //Указываем что письмо будет в формате HTML
$mailer->setSender( array( $config->get( 'mailfrom' ), $config->get( 'fromname' ) ) ); //Указываем отправителя письма
$mailer->addRecipient( $config->get( 'mailfrom' ) ); //указываем получателя письма
$mailer->setSubject( 'Вы зарегестрированные на сайте ' . $baseUrl ); //Тема письма
$mailer->setBody( '<p>Ваш логин: ' . $login . '</p><p>Ваш пароль: ' . $password . '</p>' ); //Добавляем текст письма
$mailer->send(); //Отправляем письмо
}
}
*

Санчо

  • Захожу иногда
  • 239
  • 10 / 0
  • Алексей Харламенков
Istaan! большое спасибо!

Сделаю на днях и отпишусь о результатах.
*

Aleks.Denezh

  • Живу я здесь
  • 3401
  • 428 / 4
Только не забудьте что вам наверно в цикле надо будет сделать, если например список юзеров есть в базе какой то.. или подготовить массив с юзерами..
*

fil

  • Осваиваюсь на форуме
  • 45
  • 0 / 0
Вставить например в index.php вашего шаблона сайта!
и вызвать sitename.ru/?task=massReg
Код: php
$input = JFactory::getApplication()->input;
if ( $input->getCmd( 'task' ) === 'massReg' ) {
$baseUrl = JUri::base();
$login = 'VasyaPupkin';
$password = 'passord1234';
$userEmail = 'vasyapupkin@ссылка вырезана, так как домен распространяет вирусы';
$user = new JUser;
$userData = array( 'name' => 'Вася Пупкин',
'username' => $login,
'password' => $password,
'password2' => $password,
'email' => '',
'groups' => array( 2 )
);
$user->bind( $userData );
if ( $user->save() ) {
//Если юзер зереген отпраяляем ему мыло что он зареген!
$config = JFactory::getConfig(); //получаем настройки сайта
$mailer = JFactory::getMailer(); //Получаем экземпляр класса JMail
$mailer->IsHTML( true ); //Указываем что письмо будет в формате HTML
$mailer->setSender( array( $config->get( 'mailfrom' ), $config->get( 'fromname' ) ) ); //Указываем отправителя письма
$mailer->addRecipient( $config->get( 'mailfrom' ) ); //указываем получателя письма
$mailer->setSubject( 'Вы зарегестрированные на сайте ' . $baseUrl ); //Тема письма
$mailer->setBody( '<p>Ваш логин: ' . $login . '</p><p>Ваш пароль: ' . $password . '</p>' ); //Добавляем текст письма
$mailer->send(); //Отправляем письмо
}
}

Немного не понял, не могли бы пояснить?  Есть список пользователей которых нужно зарегистрировать, логины и пароли тоже есть, (все это в Excel  скинули, там около 5 000 пользователей получается).
- Как их зарегистрировать при помощи Вашего скрипта?  Всех пользователей, пароли и т.п. через запятую указывать?
- Пользователю письмо отправлять не нужно, значит эта часть кода не нужна получается ?

Код
$user->bind( $userData );
if ( $user->save() ) {
//Если юзер зереген отпраяляем ему мыло что он зареген!
$config = JFactory::getConfig(); //получаем настройки сайта
$mailer = JFactory::getMailer(); //Получаем экземпляр класса JMail
$mailer->IsHTML( true ); //Указываем что письмо будет в формате HTML
$mailer->setSender( array( $config->get( 'mailfrom' ), $config->get( 'fromname' ) ) ); //Указываем отправителя письма
$mailer->addRecipient( $config->get( 'mailfrom' ) ); //указываем получателя письма
$mailer->setSubject( 'Вы зарегестрированные на сайте ' . $baseUrl ); //Тема письма
$mailer->setBody( '<p>Ваш логин: ' . $login . '</p><p>Ваш пароль: ' . $password . '</p>' ); //Добавляем текст письма
$mailer->send(); //Отправляем письмо
}
« Последнее редактирование: 21.08.2015, 22:26:44 от fil »
*

Aleks.Denezh

  • Живу я здесь
  • 3401
  • 428 / 4
Немного не понял, не могли бы пояснить?  Есть список пользователей которых нужно зарегистрировать, логины и пароли тоже есть, (все это в Excel  скинули, там около 5 000 пользователей получается).
- Как их зарегистрировать при помощи Вашего скрипта?  Всех пользователей, пароли и т.п. через запятую указывать?
- Пользователю письмо отправлять не нужно, значит эта часть кода не нужна получается ?
1. Считать Excel файл, получить данные, в цикле присвоить нужные параметры (логин - логину, пароль паролю, мыло мылу!
2. да!
*

fil

  • Осваиваюсь на форуме
  • 45
  • 0 / 0
ок. попробую. Спасибо!
*

AdWeb

  • Давно я тут
  • 878
  • 31 / 3
1. Считать Excel файл, получить данные, в цикле присвоить нужные параметры (логин - логину, пароль паролю, мыло мылу!
2. да!
а для тех кто в танке и далек от программирования, можно на пальцах объяснить как выдернуть данные из файла (цсв) и если знаете, то как через пхпмайадмин экспортировать из таблицы только определенные данные (имя, логин, мыло, пасс), недавно базу набивал  благо больша часть тоже с сайтов на Joomla, но вот с самописов и др платформ хотелось бы автоматизировать процесс, както...
| Хороший Хостинг | Купить Хикашоп | Каталог перекладів Joomla компонентів
PS. спасибо кидать через вебмани: R152456839841 если плюсикофф не хватает :)
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Регистрация и авторизация через соц сети

Автор DamaVbubi

Ответов: 3
Просмотров: 1868
Последний ответ 14.04.2024, 16:15:05
от Гоша_Компьютерный
На сайте периодически падает регистрация и оформление заказа

Автор Dgaidar

Ответов: 0
Просмотров: 512
Последний ответ 07.04.2022, 16:44:50
от Dgaidar
Регистрация без Email

Автор Alex_gs

Ответов: 8
Просмотров: 2079
Последний ответ 11.01.2022, 18:35:43
от Alex_gs
Вход-регистрация по електронному ключу

Автор antarey

Ответов: 10
Просмотров: 1276
Последний ответ 15.11.2021, 09:20:19
от antarey
Посещение сайта только для зарегистрированных пользователей

Автор FlexNL

Ответов: 9
Просмотров: 2079
Последний ответ 05.11.2021, 20:57:59
от FlexNL