Новости 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 Ответов
  • 1313 Просмотров
*

abrodski

  • Захожу иногда
  • 100
  • 0 / 0
Здравствуйте!

У меня в магазине установлена основная валюта - это доллары США. И дополнительная - это российские рубли. У меня магазин на английском, так что я надеюсь, что я правильно перевожу (я дам названия на обоих языках). Я в "Shop" - "Vendor" ("Магазин" - "Продавец"), там где валюта ("Currency") выбрал доллары (их я поэтому называю основной валютой), а под этим в "List of accepted currencies" ("Списке допустимых валют") там у меня стоят обе валюты (т.е. и доллары, и рубли). У меня два типа покупателей. Иностранцы и россияне. С иностранцами проблем нет. Они видят цены в долларах. А для россиян я не могу показать цены в рублях. Когда я создаю товар (Product), то то, что я продаю россиянам (у меня для всех РАЗНЫЕ товары. Т.е я НЕ продаю одно и то же для всех!) я выставляю в рублях, где "Cost price", а ниже для "Base price" и "Final price" я выставляю "Apply no rule" (видимо, не применять никаких правил). А в "Группе покупателей" (Shopper group) я выбираю "Доступно для всех" ("Available for all"). Лично я никаких групп покупателей не создавал. Там у меня (видимо, по умолчанию) стоят две группы. Одна это "Default Shopper Group" (Группа покупателей по умолчанию) и "Guest Shopper Group" (Гостевая группа покупателей). И в результате, россияне видят цены в долларах (после конвертации по курсу).
*

Liss

  • Захожу иногда
  • 238
  • 10 / 0
а как определяешь, что вот этот покупатель - россиянин, а тот - американец?
*

abrodski

  • Захожу иногда
  • 100
  • 0 / 0
а как определяешь, что вот этот покупатель - россиянин, а тот - американец?

Очень просто! Мне это вообще не нужно делать, в принципе. Я же написал "у меня для всех РАЗНЫЕ товары. Т.е я НЕ продаю одно и то же для всех!" Вообще то, это даже не товары, а УСЛУГИ. Но в контексте моего вопроса, какая разница? К примеру, я продаю два разговорника, один для англоязычных туристов в России, а другой - для русскоязычных туристов в Америке. Как мне разделять, кто что купит? А ЗАЧЕМ мне это делать? Они то САМИ знают про себя кто они, я надеюсь. Если Вы русскоязычный россиянин, Вы же знаете, что Вы не англоговорящий американец! Зачем люди будут покупать то, что им не нужно?
*

Liss

  • Захожу иногда
  • 238
  • 10 / 0
вот я зашел на сайт, какие товары ты мне покажешь? я американец или русский?
*

abrodski

  • Захожу иногда
  • 100
  • 0 / 0
вот я зашел на сайт, какие товары ты мне покажешь? я американец или русский?

Forget about it! Буду всем показывать доллары. Вместо рубля будет $0.02
Кому надо, тот поймет.
Просто те товары, которые предназначены для одной группы покупателей, будут невидимы для другой. В свойствах товара выбираешь shopper group. Не идеально, но лучше, чем ничего! Я же сам регю своих шопперов, а не просто так заходит в магазин кто угодно. Магазин то закрытого типа.
Но это неважно. Так, к общему сведению. Чтоб закрыть дискуссию ни о чем.
*

Litop

  • Захожу иногда
  • 52
  • 4 / 0
  • Joomla не использую! В Virtuemart не шарю!
Forget about it! Буду всем показывать доллары. Вместо рубля будет $0.02
Кому надо, тот поймет.
Просто те товары, которые предназначены для одной группы покупателей, будут невидимы для другой. В свойствах товара выбираешь shopper group. Не идеально, но лучше, чем ничего! Я же сам регю своих шопперов, а не просто так заходит в магазин кто угодно. Магазин то закрытого типа.
Но это неважно. Так, к общему сведению. Чтоб закрыть дискуссию ни о чем.

А почему не вывести цены в двух валютах сразу? Это ведь просто и каждый будет видеть то, что ему нужно
*

abrodski

  • Захожу иногда
  • 100
  • 0 / 0
А почему не вывести цены в двух валютах сразу? Это ведь просто и каждый будет видеть то, что ему нужно

Сразу в двух не получается, т.к. в магазине есть валюта по умолчанию. Но можно поставить модуль переключателя валют. Но, в моем конкретном случае, это ни к чему особо.
*

Litop

  • Захожу иногда
  • 52
  • 4 / 0
  • Joomla не использую! В Virtuemart не шарю!
Сразу в двух не получается, т.к. в магазине есть валюта по умолчанию. Но можно поставить модуль переключателя валют. Но, в моем конкретном случае, это ни к чему особо.

Я подобную задачу еже решал. Выводил в двух валютах и получилось как то так 

в моём случае этого вполне достаточно для понимания клиента.
Выводил так - в категории
Код
<div class="ИМЯ БЛОКА"><?php echo '<b>'.$this->currency->roundForDisplay($product->prices['salesPrice'],КОД ВАЛЮТЫ,1,false).' ИМЯ ВАЛЮТЫ</b>';?>
</div>
а вот в карточке товара так
Код
<div class="ИМЯ БЛОКА"><?php echo '<b>'.$this->currency->roundForDisplay($this->product->prices['salesPrice'],КОД ВАЛЮТЫ,1,false).' ИМЯ ВАЛЮТЫ</b>';?></div>

Основная задача была убрать с сайта кнопку селектора валют, так как всем просто лень пользоваться и максимально уменьшить количество дурацких вопросов  к менеджерам - А сколько Это в $ или в грн?
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Автоматическое присвоение родительских категорий всем товарам в админке VM4

Автор aleks_yug

Ответов: 1
Просмотров: 3166
Последний ответ 05.11.2025, 14:14:06
от aleks_yug
Вывод категорий в результате поиска

Автор vladimirwk

Ответов: 3
Просмотров: 2731
Последний ответ 19.12.2020, 18:34:06
от gartes
Сопутствующие товары

Автор Wargoth

Ответов: 2
Просмотров: 1629
Последний ответ 25.08.2020, 14:49:06
от Wargoth
Как удалить дочерние товары в карточке товара VM 2?

Автор zeus07

Ответов: 0
Просмотров: 1159
Последний ответ 12.05.2020, 14:51:39
от zeus07
Custom Filters pro - не показывает дочерние товары при выборе фильтра

Автор djed9

Ответов: 0
Просмотров: 941
Последний ответ 01.04.2020, 11:41:43
от djed9