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

tati-2000

  • Захожу иногда
  • 308
  • 2 / 0
Резиновый шаблон
« : 16.12.2017, 02:10:10 »
Резинка по ширине 100%
А надо сделать чтобы по вертикали 100% окна, а по ширине уже масштабируется, чет не могу сообразить как прописать и вообще можно ли корректно
*

tati-2000

  • Захожу иногда
  • 308
  • 2 / 0
Re: Резиновый шаблон
« Ответ #1 : 17.12.2017, 20:03:19 »
Если вы открываете браузер на четверть монитора, отображение сайта перестраивается, картинки съезжают. Как сделать если вы открыли сайт даже на 15% монитора и он отмасштабировался соответственно
в пропорции 3:4
*

tati-2000

  • Захожу иногда
  • 308
  • 2 / 0
Re: Резиновый шаблон
« Ответ #2 : 17.12.2017, 20:33:47 »
Да, тег прописан
Код
<meta name="viewport" content="width=device-width, initial-scale=1">
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
Re: Резиновый шаблон
« Ответ #3 : 17.12.2017, 20:41:12 »
не гуманно адаптивность заменять масштабированием. под микроскопом сайт не принято разглядывать сегодня.
можно для избранных блоков оставить нужную процентную ширину, скажем, в 33%, прописав это в custom.css в блоке @media
погугли, как это работает.
*

tati-2000

  • Захожу иногда
  • 308
  • 2 / 0
Re: Резиновый шаблон
« Ответ #4 : 17.12.2017, 21:06:16 »
не гуманно адаптивность заменять масштабированием. под микроскопом сайт не принято разглядывать сегодня.
можно для избранных блоков оставить нужную процентную ширину, скажем, в 33%, прописав это в custom.css в блоке @media
погугли, как это работает.

это я погуглила . Это получается для каждого блока в отдельности, как сделать для всего целиком не поняла. Адаптивная, но уже на четверти экрана все слетает, хотя это далеко не мелко. Миинимальная ширина вообще не указана, ограничения нет. Изображения не могу заставить масштабироваться. Хотя бы % на 30

*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
Re: Резиновый шаблон
« Ответ #5 : 17.12.2017, 21:14:50 »
адаптивная - это значит что сайт перестраивается, а не "слетает"  ;D
потому, что включаются правила, которые срабатывают при изменении ширины окна.
вот их и надо переопределить.

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

и никуда от этого не деться: либо соглашаешься, что шаблон ведет себя согласно типовой сетке, либо переопределяешь поведение для части блоков.
*

tati-2000

  • Захожу иногда
  • 308
  • 2 / 0
Re: Резиновый шаблон
« Ответ #6 : 17.12.2017, 21:44:50 »
Да это я понимаю, но рано он перестраивается, я и хотела задать ширину окна минимального после которого он станет перестраиваться, а до этого размера будет масштабироваться Для мобильного понятно. А вот на рабочем столе вы уменьшаете окно, а он даже при достаточно нормальном визуальном отображении начинает перестраивать. Как задать тот рубеж, до которого перестраиваться не должен. А должен сохраняться в изначальном виде так сказать.

К примеру четверть экрана (19) а он уже перестраивает. Вот не могу найти где эти правила прописаны, сам файл
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
Re: Резиновый шаблон
« Ответ #7 : 17.12.2017, 21:52:19 »
все плохо  ;D
надо много-много читать про CSS и @media
ещё раз: начинают перестраиваться именно потому, что им прописали это правило.
засекаем, при каком размере происходит перестраивание блоков и пишем свое правило media для этого разрешения, которое ОТМЕНИТ изменение ширины нужных нам блоков.
*

tati-2000

  • Захожу иногда
  • 308
  • 2 / 0
Re: Резиновый шаблон
« Ответ #8 : 17.12.2017, 22:01:44 »
К примеру, вот прописала, компонент переопределила, не работает...
 @media (min-width:600px) {.sppb-row-container{width:100%}}
@media (min-width:400px) {.sppb-row-container{width:100%}}
@media (min-width:350px) {.sppb-row-container{width:100%}}
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
Re: Резиновый шаблон
« Ответ #9 : 17.12.2017, 22:08:41 »
это слишком рандомно  ;D
вот что ты хотела этим переопределить?
типа, "мне не нравится, что блок занимает 100 ширины, так что сделаю-ка я правило, чтобы он... занимал 100% ширины!"
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
*

tati-2000

  • Захожу иногда
  • 308
  • 2 / 0
Re: Резиновый шаблон
« Ответ #11 : 17.12.2017, 22:13:57 »
@media screen and (min-width:350px) {.sppb-row-container{width:100%}}  если окно 350 ширина останется 100% или как заставить  сохранить все пропорции.
*

effrit

  • Легенда
  • 10132
  • 1118 / 13
  • effrit.com
Re: Резиновый шаблон
« Ответ #12 : 17.12.2017, 22:15:12 »
в общем, смысл в том, что блоки на широком формате имеют, скажем, 33% ширины.
а при сужении получают 100 и занимают всю строку.
так что тебе надо им обратно возвращать эти самые 33%.
 
*

tati-2000

  • Захожу иногда
  • 308
  • 2 / 0
Re: Резиновый шаблон
« Ответ #14 : 17.12.2017, 22:17:08 »
не те.....но я по идее думала что правило действует и для того что внутри ... а мне наоборот надо, уменьшить, ну да..
*

kern.USR

  • Давно я тут
  • 827
  • 68 / 1
Re: Резиновый шаблон
« Ответ #15 : 18.12.2017, 10:55:11 »
судя по классам - у вас SP PageBuilder используется.
Зачем лезть в стили, если всё настраивается в админке. PageBuilder прекрасно умеет генерировать стили для разных экранов.
И, дополнительно, хотелось бы узнать, в какой файл вносите изменения?
*

tati-2000

  • Захожу иногда
  • 308
  • 2 / 0
Re: Резиновый шаблон
« Ответ #16 : 26.12.2017, 17:50:47 »
Да я через админку и прописываю класс в  custom.css , просто то как перестраивает под экраны сейчас, не устраивает человека...
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться