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

DimaValk

  • Захожу иногда
  • 86
  • 1 / 0
Здравствуйте! В шапке моего сайта: webstrategy.by нужно изменить шрифт. Подскажите пожалуйста, как это сделать? Где это искать?
это надписи в слайдшоу. One page, simplekey, easu use.
Показано, что это 58 строка кода: webstrategy.by/:58.

получается это вот:
<style type="text/css">
   
      
   .vg-firstTitle{ font:160px/140px 'league_gothic'; }
   .vg-secondTitle{ font:72px/60px 'infinity'; }
   .vg-thirdTitle{ font:100px/80px 'league_gothic'; }
   .vg-fourthTitle{ font:36px/30px 'infinity'; }

Как туда попасть и поменять шрифты в шапке сайта?
*

Aleks_El_Dia

  • Живу я здесь
  • 3671
  • 353 / 0
  • AEDStudio Joomla! Direction
Скачайте себе шаблон на комп, и Total Commander'ом ищите в содержимом файлов по запросу vg-firstTitle например.
Спам придумали боги в отместку за наши молитвы (с) Рома Воронежский
На молоко: Z369038872422 || R210017695494 || U247040729215 || ЯД 410011288250383
Мигрирую сайты, переношу расширения J!1.0->J!1.5->J!2.5. Более 50 успешных миграций.
*

DimaValk

  • Захожу иногда
  • 86
  • 1 / 0
Спасибо большое! нашел. Но вот теперь не могу понять другую вещь. я меняю шрифт к примеру на arial. он изменяется. но я нашел другой шрифт не популярный. загрузил его так: /public_html/templates/vg_simplekey/fonts Но он так и не ставиться. что я делаю не так? файл шрифта который я загрузил такой - Bebas_Neue_Cyrillic.ttf
В данной папке Fonts я заметил, что шрифты установлены 4-мя файлами. К примеру:
arial.eot
arial.svg
arial.ttf
arial.woff
а у меня только файл ttf. В этом как я понимаю проблема? И как тогда мне ее решить? где взять эти .eot .svg .woff? если в интернете скачиваешь шрифт они все ttf. может я не там ищу? или не в этом вообще дело? Помогите пожалуйста мне ребята разобраться. Я просто никогда ранее не сталкивался со шрифтами.
*

SK

  • Живу я здесь
  • 2155
  • 164 / 0
*

DimaValk

  • Захожу иногда
  • 86
  • 1 / 0
прочитал. понял, что если данный шрифт установлен только у меня, то при загрузке сайта - только мною выбранный шрифт будет загружаться у меня, а у всех остальных стандартный. как сказано, нужно чтоб при загрузке сайта и загружался шрифт мною выбранный. Это я понял. но как сделать чтоб этот шрифт у всех загружался я не понял. вот к примеру через сервис Google я выбрал шрифт - http://www.google.com/fonts/ - мне дается ссылка -
 3. Add this code to your website:

<link href='http://fonts.googleapis.com/css?family=Marmelad&subset=cyrillic' rel='stylesheet' type='text/css'>

Куда ее вставить я не пойму.
код на странице материала:

<div class="slide_content oneColumn">
<h1 class="vg-firstTitle">тест тест</h1>
<h2 class="vg-secondTitle">это тест</h2>
<p id="excerpt">Detailed document and example data XML will help you to get started easily, if you are looking for this kind of theme just in time, please pay more attention to this theme and also consider purchase it, thanks in advance</p>
<p id="btns"><a class="van_large_btn anchor" href="#section-works" target="_self" style="float: none; margin: auto; background: #55ac4a; color: #fff;">Читать далее</a></p>
</div>

или сюда куда-то:
<?php
   //LOADING MASK
   if( $vg_loading == 0 ){
      echo 'body.home{ display:block; }';
   }
   ?>
   
   .vg-firstTitle{ font:110px/90px 'arial'; }
   .vg-secondTitle{ font:72px/60px 'infinity'; }
   .vg-thirdTitle{ font:100px/80px 'arial'; }
   .vg-fourthTitle{ font:36px/30px 'infinity'; }
*

umbabaraumba

  • Живу я здесь
  • 2415
  • 153 / 1
  • если помог можете поставить +
<link href='http://fonts.googleapis.com/css?family=Marmelad&subset=cyrillic' rel='stylesheet' type='text/css'>

Куда ее вставить я не пойму.
В index.php вашего шаблона между тегами <head></head>
Errare humanum est
Ubuntu по-русски
Пишу не сложные модули и компоненты, не дорого но не срочно
*

DimaValk

  • Захожу иногда
  • 86
  • 1 / 0
Поставил
<head>
...
...
...
<?php
   //LOADING MASK
   if( $vg_loading == 0 ){
      echo 'body.home{ display:block; }';
   }
   ?>
   
   .vg-firstTitle{ font:110px/90px 'Marmelad'; }
   .vg-secondTitle{ font:72px/60px 'infinity'; }
   .vg-thirdTitle{ font:100px/80px 'arial'; }
   .vg-fourthTitle{ font:36px/30px 'infinity'; }

 <link href='http://fonts.googleapis.com/css?family=Marmelad&subset=cyrillic' rel='stylesheet' type='text/css'>
...
...
</head>
Не получается все ровно.
*

DimaValk

  • Захожу иногда
  • 86
  • 1 / 0
Спасибо всем, кто помогал. У меня получилось.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Передирект страницы панели управления

Автор aviyar

Ответов: 6
Просмотров: 12465
Последний ответ 09.04.2025, 11:53:35
от aviyar
как выводить категории на главной странице.

Автор makarovse

Ответов: 7
Просмотров: 2851
Последний ответ 03.04.2022, 19:50:42
от THE KILLERS
Ошибка при сохранении страницы

Автор gaa001

Ответов: 3
Просмотров: 1888
Последний ответ 05.11.2019, 14:14:37
от gaa001
Последние посещенные страницы пользователем

Автор Fedor Vlasenko

Ответов: 18
Просмотров: 8324
Последний ответ 06.08.2019, 13:41:48
от pH43
Изменить информацию в шапке

Автор Bru095

Ответов: 3
Просмотров: 1601
Последний ответ 07.03.2019, 14:03:00
от khan-alex