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

capricorn

  • Завсегдатай
  • 1949
  • 118 / 3
Re: отображение ошибок на php7
« Ответ #30 : 28.07.2017, 12:03:55 »
Цитировать
В связи с тем, что объекты, унаследовавшие интерфейс Throwable попадают в произвольный обработчик ошибок, заданный при помощи set_exception_handler, фатальные ошибки вообще не логируются. Вместо этого они "под одну гребёнку" с исключениями типа 404 передаются в рендерер ошибок Joomla! и показываются как есть любому желающему Azn

Такого не может быть, чтобы фатальные не логгировались. Проверьте у себя с php 7, настроив плагин debug. Я так понял что в 3.7.4 встроен вышеупомянутый пулл. https://github.com/joomla/joomla-cms/pull/10341. С php 5.6 все вылетает на экран. Это точно.

Parse error: syntax error, unexpected 'JPATH_BASE' (T_STRING) in /var/www/html/***/htdocs/index.php on line 40
« Последнее редактирование: 28.07.2017, 14:11:30 от capricorn »
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: отображение ошибок на php7
« Ответ #31 : 28.07.2017, 12:16:48 »
ну у меня в логах пусто. делаю синтаксическую ошибку - в логах тишина. да и как оно может быть залогировано как fatal error, если оно на самом деле сейчас таким не является?
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

ProtectYourSite

  • Живу я здесь
  • 2368
  • 139 / 4
  • Безопасность вебсайтов
Re: отображение ошибок на php7
« Ответ #32 : 28.07.2017, 12:29:20 »
адинка конечно страдает по прежнему, но там я переживу.
Так для админки можно поправить error.php в административном шаблоне.
*

vipiusss

  • Гуру
  • 5739
  • 344 / 11
  • Скайп: renor_
Re: отображение ошибок на php7
« Ответ #33 : 28.07.2017, 12:33:07 »
Так обнова же потрёт в админке.
Миграция, установка, обновление версий Joomla  |  Создание сайтов "под ключ"  |  Эксклюзивные заглушки "offline"  |  Работа с "напильником" над шаблонами и расширениями
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: отображение ошибок на php7
« Ответ #34 : 28.07.2017, 12:35:43 »
Так обнова же потрёт в админке.
ну да. можно то можно, только ненадолго :) ну то такое, админка вторична уже.
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

ProtectYourSite

  • Живу я здесь
  • 2368
  • 139 / 4
  • Безопасность вебсайтов
Re: отображение ошибок на php7
« Ответ #35 : 28.07.2017, 13:33:34 »
Так обнова же потрёт в админке.
Можно шаблон продублировать и переименовать
*

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

  • Завсегдатай
  • 1918
  • 160 / 4
  • разработчик.москва
Re: отображение ошибок на php7
« Ответ #36 : 28.07.2017, 13:50:24 »
Цитировать
Такого не может быть
Это реальность, комрад!

Цитировать
Parse error: syntax error, unexpected 'JPATH_BASE' (T_STRING) in /var/www/html/***/htdocs/index.php on line 40

Попробуйте после инстанциации приложения:

Код
$app = JFactory::getApplication('site');
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: отображение ошибок на php7
« Ответ #37 : 28.07.2017, 14:26:11 »
Можно шаблон продублировать и переименовать
та не, ну это ж следить за всеми обновами шаблона админки придется :) тогда уж лучше править каждый раз error.php, или доступ к нему закрыть, чтоб не переписывался.

Это реальность, комрад!
да да, подтверждаю. если сделать синтаксическую ошибку например в самом index.php - все ок, ошибка фиксируется в логах. как только Joomla перехватила обработчик - все, никаких записей в логах нет. та оно и логично, fatal превратился в soft fail :) с одной стороны это даже удобнее, получаем полный контроль на фаталами. но с другой вот да, нюансы есть...
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

capricorn

  • Завсегдатай
  • 1949
  • 118 / 3
Re: отображение ошибок на php7
« Ответ #38 : 28.07.2017, 14:35:34 »
Цитировать
Попробуйте после инстанциации приложения:

Я уже попробовал )). Похоже так и есть.

Код: php
$app = JFactory::getApplication('site');
trigger_error("MyError", E_USER_ERROR);

это 5.6 при включенном дебаге.

Код
( ! ) Fatal error: MyError in C:\Program Files\Web\htdocs\joomla3\index.php on line 48
Call Stack
# Time Memory Function Location
1 0.0011 239000 {main}( ) ...\index.php:0
2 1.1478 4446408 trigger_error ( ) ...\index.php:48

В логе Joomla пусто. Придется лог сервера смотреть тогда на php 7.
Цитировать
если сделать синтаксическую ошибку например в самом index.php - все ок, ошибка фиксируется в логах.

на 5.6 похоже не пишется.

« Последнее редактирование: 28.07.2017, 14:42:11 от capricorn »
*

Septdir

  • Живу я здесь
  • 3370
  • 168 / 4
Re: отображение ошибок на php7
« Ответ #39 : 28.07.2017, 15:50:43 »
на 5.6 похоже не пишется.
Разговор от 7.х
ксттаи а где сам обработчик. мб получиться переопредить через плагин. решение временное, хотябы от обнов слетать не будет
Не можете справиться с задачей сами пишите, решу ее за вас, не бесплатно*.
*Интересная задача, Деньги или Бартер. Натурой не беру!
CodersRank | Контакты | Мой GitHub | Workshop
*

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

  • Завсегдатай
  • 1918
  • 160 / 4
  • разработчик.москва
Re: отображение ошибок на php7
« Ответ #40 : 28.07.2017, 15:56:37 »
Цитировать
ксттаи а где сам обработчик

JErrorPage::render
*

capricorn

  • Завсегдатай
  • 1949
  • 118 / 3
Re: отображение ошибок на php7
« Ответ #41 : 28.07.2017, 16:06:21 »
Цитировать
мб получиться переопредить через плагин

есть такая идея. https://groups.google.com/forum/#!msg/joomla-dev-cms/bPsyhj55qcA/-1m6GgyXAwAJ. другое дело стоит ли оно того.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Пропало отображение в материалах

Автор kbwka

Ответов: 1
Просмотров: 1091
Последний ответ 24.03.2025, 20:24:16
от R31rus
Отображение на мобильной версии

Автор annetkas

Ответов: 9
Просмотров: 9651
Последний ответ 28.10.2024, 10:56:18
от annetkas
Как сделать отображение времени создания материала?

Автор Pzhigalov

Ответов: 0
Просмотров: 1116
Последний ответ 27.09.2023, 22:45:29
от Pzhigalov
Отображение меню мобильной версии сайта

Автор AnSk

Ответов: 1
Просмотров: 966
Последний ответ 22.08.2023, 18:52:55
от arma
Отображение полей

Автор vladmor

Ответов: 1
Просмотров: 588
Последний ответ 31.10.2021, 11:53:23
от vladmor