Новости 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

Quantum Manager нужен сообществу, а автору нужна ваша поддержка!

Quantum Manager нужен сообществу, а автору нужна ваша поддержка!Файловый менеджер Quantum — одно...

Файловый менеджер Quantum — одно из самых популярных решений для Joomla, созданное разработчиком из сообщества Joomla, Дмитрием Цымбалом (@tsymbalmitia). Он делает Quantum удобным, безопасным и современным, обновляет его, исправляет уязвимости и отвечает пользователям — всё это в свободное от основной работы время.

Теперь настал момент для следующего шага: развитие проекта требует больше времени и ресурсов.

0 Пользователей и 1 Гость просматривают эту тему.
  • 7 Ответов
  • 1639 Просмотров
*

vladsklyar

  • Захожу иногда
  • 86
  • 1 / 0
Всем привет.
Уважаемые гуру подскажите есть код  для своей сортировки товаров
Код
<div class="top_category_form_header">Сортировать:

<select onchange="javascript: window.location.href=this.options[this.selectedIndex].value" id="category_sort_select">

<option value="<?php echo JRoute::_ ($fieldLink . '&orderby=product_price',FALSE);?>">От дорогих к дешевым</option>
<option value="<?php echo JRoute::_ ($fieldLink . '&orderby=product_price&dir=ASC',FALSE);?>"  >От дешевых к дорогим</option>
<option value="<?php echo JRoute::_ ($fieldLink . '&orderby=product_sales',FALSE);?>">Популярные</option>
<option value="<?php echo JRoute::_ ($fieldLink . '&dir=r=ASC',FALSE);?>">По названию от А до Я</option>
<option value="<?php echo JRoute::_ ($fieldLink . '&dir=DESC',FALSE);?>">По названию от Я до А</option>
</select>
Проблема при выборе параметра все срабатывает, кроме запоминания текущего вида сортировки.
Например:
Выбираю  -  Популярные, сортировка происходит, но в поле выборе значение остается  первое От дорогих к дешевым.
может кто подскажет как справится с этой бедой 
*

gartes

  • Завсегдатай
  • 1859
  • 142 / 6
  • Е = mс²
Привет ... А кеш Браузера.... Не...
Смотри... эта сортировка берется из кука....
Может ссылку на сайт дашь ()())(
*

vladsklyar

  • Захожу иногда
  • 86
  • 1 / 0
Не это не из кука я сам HTML код дописал
не могу придумать условие для сортировки по типу
<?php if ( $options['foo'] = $_SERVER["REQUEST_URI"] ) echo 'selected="selected"'; ?> >


вот код есть для Wordpressа, хочу на подобии такого запелить
Код
<div class="sort">
<b>Сортировать по:</b>
<select onchange="location = this.value;">
<option value="{url sort=position page=null}"{if $sort=='position'} selected="selected"{/if}>По умолчанию</option>
<option value="{url sort=name_asc page=null}"{if $sort=='name_asc'} selected="selected"{/if}>Имени от А до Я</option>
<option value="{url sort=name_desc page=null}"{if $sort=='name_desc'} selected="selected"{/if}>Имени от Я до А</option>
<option value="{url sort=price_asc page=null}"{if $sort=='price_asc'} selected="selected"{/if}>Ценам: Низкие &gt; Высокие</option>
<option value="{url sort=price_desc page=null}"{if $sort=='price_desc'} selected="selected"{/if}>Ценам: Высокие &lt; Низкие</option>
</select>
</div>


*

fsv

  • Moderator
  • 2781
  • 411 / 2
Эта сортировка и выбор активного option'a через одно место сделана в модели товара.
Фильтрацию надо бы делать с использованием формы, заполняя скрытые поля по change. И с user state.
Если вы сами HTML писали, можно как-то так сделать:
Код
$app = JFactory::getApplication('site');
$orderby = $app->input->getCmd('orderby', '');
$dir = $app->input->getCmd('dir', 'ASC');
Код
<option value="<?php echo JRoute::_ ($fieldLink . '&orderby=product_price',FALSE);?>" <?php if($orderby == 'product_price' && $dir == 'ASC'){ echo 'selected="selected"'; } ?>>
От дорогих к дешевым
</option>
по каждому option'у - свой код
Веб-разработка: заказ. Только новая разработка.
*

vladsklyar

  • Захожу иногда
  • 86
  • 1 / 0
Эта сортировка и выбор активного option'a через одно место сделана в модели товара.
Фильтрацию надо бы делать с использованием формы, заполняя скрытые поля по change. И с user state.
Если вы сами HTML писали, можно как-то так сделать:
Код
$app = JFactory::getApplication('site');
$orderby = $app->input->getCmd('orderby', '');
$dir = $app->input->getCmd('dir', 'ASC');
Код
<option value="<?php echo JRoute::_ ($fieldLink . '&orderby=product_price',FALSE);?>" <?php if($orderby == 'product_price' && $dir == 'ASC'){ echo 'selected="selected"'; } ?>>
От дорогих к дешевым
</option>
по каждому option'у - свой код

Код
<?php 
$app = JFactory::getApplication('site');
$orderby = $app->input->getCmd('orderby', '');
$dir = $app->input->getCmd('dir', 'ASC');
?>
<select onchange="javascript: window.location.href=this.options[this.selectedIndex].value" id="category_sort_select" name="options[foo]">

<option value="<?php echo JRoute::_ ($fieldLink . '&orderby=product_price',FALSE);?>" <?php if($orderby == 'product_price'){ echo 'selected="selected"'; } ?>>
От дорогих к дешевым
</option>
<option value="<?php echo JRoute::_ ($fieldLink . '&orderby=product_price&dir=ASC',FALSE);?>" <?php if($orderby == 'product_price' && $dir == 'ASC'){ echo 'selected="selected"'; } ?>>
От дешевых к дорогим
</option>
<option value="<?php echo JRoute::_ ($fieldLink . '&orderby=product_sales',FALSE);?>" <?php if($orderby == 'product_sales' ){ echo 'selected="selected"'; } ?>>
Популярные
</option>
</select>
Популярные работают на ура а вот    От дорогих к дешевым и От дешевых к дорогим всегда при выборе любого из них оба selected="selected"
тута тоже <option value="<?php echo JRoute::_ ($fieldLink . '&dir=r=ASC',FALSE);?>" <?php if($dir == 'ASC' ){ echo 'selected="selected"'; } ?>>
По названию от А до Я
</option>
не могу побороть
« Последнее редактирование: 20.02.2017, 10:06:49 от vladsklyar »
*

vladsklyar

  • Захожу иногда
  • 86
  • 1 / 0
Упс
Код
<?php 
$app = JFactory::getApplication('site');
$orderby = $app->input->getCmd('orderby', '');
$dir = $app->input->getCmd('dir', 'ASC');
?>
<select onchange="location = this.value;">

<option value="<?php echo JRoute::_ ($fieldLink . '&orderby=product_price&dir=DESC',FALSE);?>" <?php if($orderby == 'product_price' && $dir == 'DESC'){ echo 'selected="selected"'; } ?>>
От дорогих к дешевым
</option>
<option value="<?php echo JRoute::_ ($fieldLink . '&orderby=product_price&dir=ASC',FALSE);?>" <?php if($orderby == 'product_price' && $dir == 'ASC'){ echo 'selected="selected"'; } ?>>
От дешевых к дорогим
</option>
<option value="<?php echo JRoute::_ ($fieldLink . '&orderby=product_sales',FALSE);?>" <?php if($orderby == 'product_sales' ){ echo 'selected="selected"'; } ?>>
Популярные
</option>

</select>

Так работает, осталось разобрать  
<option value="<?php echo JRoute::_ ($fieldLink . '&dir=r=ASC',FALSE);?>">По названию от А до Я</option>
<option value="<?php echo JRoute::_ ($fieldLink . '&dir=DESC',FALSE);?>">По названию от Я до А</option>

<option value="<?php echo JRoute::_ ($fieldLink . '&dir=ASC',FALSE);?>" <?php if( $dir == 'ASC' ){ echo 'selected="selected"'; } ?>>
По названию от А до Я
</option>
<option value="<?php echo JRoute::_ ($fieldLink . '&dir=DESC',FALSE);?>" <?php if( $dir == 'DESC' ){ echo 'selected="selected"'; } ?>>
По названию от Я до А
</option>
« Последнее редактирование: 20.02.2017, 10:38:32 от vladsklyar »
*

vladsklyar

  • Захожу иногда
  • 86
  • 1 / 0
Осталась проблема с
Код
<option value="<?php echo JRoute::_ ($fieldLink . '&dir=ASC',FALSE);?>" <?php if( $orderby == '' && $dir == 'ASC' ){ echo 'selected="selected"'; } ?>>
По названию от А до Я
</option>
<option value="<?php echo JRoute::_ ($fieldLink . '&dir=DESC',FALSE);?>" <?php if( $orderby == '' && $dir == 'DESC' ){ echo 'selected="selected"'; } ?>>
По названию от Я до А
</option>
при загрузке страницы и выборе первыми По названию от А до Я или  По названию от Я до А все нормально но если после этого выбрать    От дорогих к дешевым то тогда ссылки стают вида
/katushki.html?dir=ASC&orderby=product_price и
/katushki.html?dir=DESC&orderby=product_price
и эти тоже тогда   echo 'selected="selected"'
<option value="<?php echo JRoute::_ ($fieldLink . '&orderby=product_price&dir=DESC',FALSE);?>" <?php if($orderby == 'product_price' && $dir == 'DESC'){ echo 'selected="selected"'; } ?>>
   От дорогих к дешевым
</option>
<option value="<?php echo JRoute::_ ($fieldLink . '&orderby=product_price&dir=ASC',FALSE);?>" <?php if($orderby == 'product_price' && $dir == 'ASC'){ echo 'selected="selected"'; } ?>>
От дешевых к дорогим
</option>
*

vladsklyar

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

Сортировка По наличию товара - сначала По убыванию в VirtueMart

Автор rsn

Ответов: 7
Просмотров: 3925
Последний ответ 10.04.2025, 01:19:37
от strongest
Блокировка спама в форме &quot;Задать вопрос по товару&quot; VirtueMart 3-4 средствами PHP

Автор aleks_yug

Ответов: 2
Просмотров: 2271
Последний ответ 30.08.2023, 11:37:41
от aleks_yug
Доработать VirtueMart 3

Автор eclipseggg

Ответов: 1
Просмотров: 6251
Последний ответ 01.10.2021, 19:28:53
от varX
Как в RSS ленту VirtueMart 3 добавить дополнительные изображения товара?

Автор Slava77

Ответов: 2
Просмотров: 3552
Последний ответ 06.06.2021, 01:12:01
от Slava77
[Решено] Список товаров на главной VirtueMart

Автор vitoxa_ya

Ответов: 6
Просмотров: 10609
Последний ответ 21.10.2020, 23:27:08
от alfa212