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

sm_ph

  • Осваиваюсь на форуме
  • 16
  • 0 / 0
Когда нажимаешь на "Показать все товары" в выбраном производителе сверху появляются категории, а товары ниже под категориями.
Если много категорий, товаров можно и не найти, и крайне неудобно. Как можно решить эту проблему (убрать категории при выборе производителя и показе всех товаров производителя)?
*

silverbeam

  • Осваиваюсь на форуме
  • 14
  • 0 / 0
+1!  актуальный вопрос.
*

driver_by

  • Новичок
  • 6
  • 7 / 0
У себя, чтобы в поиске и при выводе товаров производителя не выводились все категории решил так:
1. скинул файлик /components/com_virtuemart/views/category/tmpl/default.php в /templates/МОЙ_ШАБЛОН/html/com_virtuemart/category/
2. Заменил код:

Код
/* Show child categories */
if ( VmConfig::get('showCategory',1) ) {

на

Код
/* Show child categories */
if ( VmConfig::get('showCategory',1) && empty($this->keyword) && empty($this->products)) {

Все работает ) Не знаю насколько это верно, может еще кто прокомментирует )
« Последнее редактирование: 20.04.2012, 10:52:11 от driver_by »
*

driver_by

  • Новичок
  • 6
  • 7 / 0
Поправил предыдущий пост:

empty($this->keyword) - убирает вывод всех категорий в поиске
empty($this->products) - убирает вывод всех категорий, если есть что выводить из товаров (в том числе и для производителей, если конечно у него есть хоть один товар на вывод)
*

driver_by

  • Новичок
  • 6
  • 7 / 0
P.S. Этот метод работает, только когда в категориях нет одновременно и товаров, и подкатегорий...т.е. все товары распределены по подкатегориями (я предпочитаю такую структуру =)).
Потому что, когда есть товары, буду выводится только товары (подкатегорий видно не будет).
*

Garyk01

  • Осваиваюсь на форуме
  • 22
  • 1 / 0
Проверил - работает на VM 2.0.26а.
Лови +
Только код, который надо заменить, такой:
Код
if (VmConfig::get ('showCategory', 1) and empty($this->keyword)) {
на твой
Код
if ( VmConfig::get('showCategory',1) && empty($this->keyword) && empty($this->products)) {
*

komden

  • Осваиваюсь на форуме
  • 11
  • 0 / 0
Проверил - работает на VM 2.0.26а.
Лови +
Только код, который надо заменить, такой:
Код
if (VmConfig::get ('showCategory', 1) and empty($this->keyword)) {
на твой
Код
if ( VmConfig::get('showCategory',1) && empty($this->keyword) && empty($this->products)) {

Спасибо. Работает. +1
*

Елeна

  • Захожу иногда
  • 102
  • 2 / 0
Здравствуйте.
Прекрасно работало на VirtueMart 3
Совершенно не работает на VirtueMart 4
Подскажите решение!

VirtueMart 4.0.14 10805  Joomla! 3.10.11 шаблон protostar
сайт

Спасибо
Хорошего настроения знатоки Joomla!
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Модуль SJ Filter for VirtueMart - только 30 custom fields

Автор Alex_gs

Ответов: 0
Просмотров: 2534
Последний ответ 08.08.2022, 15:09:59
от Alex_gs
Как вывести категории с фото и подкатегориями?

Автор sergspb

Ответов: 0
Просмотров: 2536
Последний ответ 18.05.2022, 15:01:55
от sergspb
Как убрать показ дополнительного изображения в категории товаров?

Автор ElenaNova

Ответов: 0
Просмотров: 2902
Последний ответ 22.04.2020, 13:13:27
от ElenaNova
Как вывести модуль в витрине VirtueMart?

Автор Дмитрий_76

Ответов: 1
Просмотров: 2916
Последний ответ 09.02.2020, 10:06:17
от AlexB
Как скрыть описание категории VM в моб версии?

Автор Orfei

Ответов: 6
Просмотров: 1068
Последний ответ 30.04.2019, 01:16:38
от Orfei