Новости Joomla

Вышел компонент интернет-магазина HikaShop 6.1.0.Один из известных компонентов магазина для Joomla

Вышел компонент интернет-магазина HikaShop 6.1.0.Один из известных компонентов магазина для Joomla

👩‍💻 Вышел компонент интернет-магазина HikaShop 6.1.0.Один из известных компонентов магазина для Joomla.v.6.1.0 Что нового?Модуль корзины. Отображение корзины в виде offcanvas-элемента.Кнопка выхода в панели управления пользователя. Что тут сказать, просто добавили. Отправка писем только для заказов, оплаченных определёнными способами. Это удобно для рассылки сообщений, привязанных к региону или провайдеру (например, инструкции по банковскому переводу только для заказов, оплаченных банковским переводом).Листинг выплат по партнерской системе. В разделе управления партнёрскими программами появилось новое подменю «Выплаты», в котором перечислены выплаты партнёрам (упрощённое отслеживание и сверка). Добавлены настройки, благодаря которым можно определить категории товаров, на которые начисляется партнёрская комиссия с продаж.Список комплектов товаров. Система комплектов позволяет отслеживать остатки товаров, продаваемых в комплекте.Подробнее в блоге Hikashop.Поскольку мы не сообщали ранее о Hikashop 6.0, то вкратце скажем, что он вышел в июне 2025г. В новой версии было:- 13 исправлений ошибок- 17 улучшений. В частности:- - Hikashop теперь проверяет UserAgent пользователя перед добавлением товара в корзину, чтобы отсечь ботов. Ведь компонент хранит корзины в базе данных.- - улучшен роутинг компонента, позволяющий использовать в названии товара даже слеши.- - улучшения фильтра товаров - ускорение загрузки категорий/брендов/характеристик.- 4 новых функции:- - добавлена поддержка Joomla 6.0.- - Улучшена возможность адаптации форм HikaShop на фронтенде к шаблонам, не использующим стандартные классы Joomla.- - Плагин внутреннего баланса: возможность исключить уцененные товары из начисленных баллов.- - Теперь можно выбирать склады для вариантов товаров.Подробнее в Changelog Hikashop.Также при работе с Hikashop стоит учитывать, что один и тот же код поддерживает версии Joomla от 3.х до 5.х, а в таблице сравнения версий заявлена и Joomla 2.5. Беглый просмотр кода показал, что компонент как был, так и остался старым и для совместимости с Joomla 4+ просто добавлен плагин.@joomlafeed#joomla #расширения #hikashop

На сколько актуально делать сайт в 2025 году? Битва с нейросетями и выбор CMSНовый выпуск подкаста...

На сколько актуально делать сайт в 2025 году? Битва с нейросетями и выбор CMSНовый выпуск подкаста...

На сколько актуально делать сайт в 2025 году? Битва с нейросетями и выбор CMSНовый выпуск подкаста "Просто о Digital"Гость:🎙 Владимир Сергеенко ( https://t.me/aixman ) • Интернет-маркетолог с 14-летним опытом• Соавтор книги «Нетворкинг»• Спикер конференции Ассоциации директоров по развитиюВедущий:💻 Игорь Филипенко ( https://t.me/igorleee )• Программист и предприниматель с 16-летним опытом в digital• Основатель подкаста "Просто о Digital"• Специалист по автоматизации бизнес-процессовВ этом выпуске вы узнаете:🔥 Актуальность сайтов в эпоху нейросетей• Актуален ли сайт сейчас и будет ли актуален в будущем?• Зачем нужен сайт? Есть ли иные инструменты привлечения клиентов?🤖 Нейросети vs Поисковики vs Сайты• Почему нейросети не заменят сайты в B2B-сегменте• Как Google и Яндекс меняют алгоритмы из-за AI-конкуренции📊 Сайт как центр вселенной вашего трафика• Почему без сайта вы сливаете 40% маркетингового бюджета впустую?🛡 Безопасность и Joomla 6.0• Как отфильтровать 99% ботов и сэкономить на трафике• Почему Joomla теперь обходит WordPress в безопасности и скорости⚖️ Выбор платформы: битва CMS• WordPress: 50% рынка но 80% уязвимостей• Joomla: профессиональная CMS для сложных проектов• Drupal: почему его похоронили в 2023 году• Tilda: когда конструктор выгоднее CMSПриятного просмотра/прослушивания!RSS: https://cloud.mave.digital/61930Mave: https://igorfilipenko.mave.digitalЯндекс Музыка: https://music.yandex.ru/album/35840190Telegram Mave: https://t.me/mavestreambot/app?startapp=igorfilipenkoApple Podcasts: https://podcasts.apple.com/us/podcast/просто-о-digital-и-бизнесе/id1801903450ВКонтакте: https://vk.com/podcasts-12488584Youtube: https://www.youtube.com/playlist?list=PLfR6jTpnkohDDco32xZ-KyMyWi_S5Xdy2=========================Видео-формат подкаста:Rutube: https://rutube.ru/video/b5762754f9d3e0dc382f32f3034be0a2/Youtube: https://youtu.be/nu1XF2jNbxY#подкаст #podcast

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

Kto-to3oneT

  • Новичок
  • 9
  • 0 / 0
Гет Параметры и ЧПУ
« : 22.05.2019, 13:12:37 »
Привет всем, подскажите пожалуйста, никак не могу понять как можно реализовать.
Есть фильтр, при выборе некоторых значений в фильтре появляются в адресной строке гет параметры. Собственно вопрос в том, возможно ли настроить так, что бы все гет параметры в URL записывались через слеш?

На данный момент у меня формируется ЧПУ с помощью onBeforeBuildRoute, там все ок. Если вбиваю нужный мне ЧПУ я попадаю в onBeforeParseRoute, там я достаю нужный мне список товаров, но как мне передать этот список в контроллер jshopping?  Все что у меня сейчас получается это попасть в метод onBeforeParseRoute, после чего ошибка - ERR_CONTENT_DECODING_FAILED. Подскажите пожалуйста, куда стоит копать?
*

Kto-to3oneT

  • Новичок
  • 9
  • 0 / 0
Re: Гет Параметры и ЧПУ
« Ответ #1 : 23.05.2019, 12:00:25 »
Может есть у кого-нибудь здравые мысли на этот счет?  !!!???!!!
Буду благодарен.
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: Гет Параметры и ЧПУ
« Ответ #2 : 23.05.2019, 12:20:26 »
я попадаю в onBeforeParseRoute, там я достаю нужный мне список товаров, но как мне передать этот список в контроллер jshopping?
никак, потому что вы не должны получать список товаров в роутере. в роутере вы должны определить параметры запроса, исходя из которых контролер (модель) получит список товаров
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

Kto-to3oneT

  • Новичок
  • 9
  • 0 / 0
Re: Гет Параметры и ЧПУ
« Ответ #3 : 23.05.2019, 12:37:29 »
Я догадывался что я не должен этого делать). Как мне тогда передать параметры в модель или контроллер? Как? У меня параметры приходят, но все что я могу сейчас с ними сделать это вывести их  *ОХ-Х-Х*
А еще я посмотрел как работает чпу для товаров, автор nevigen. Он там, как я понял в onBeforeParseRoute загружает сам товар с помощью $tProduct->load($productID), а потом редиректит.
*

sivers

  • Живу я здесь
  • 2591
  • 359 / 0
Re: Гет Параметры и ЧПУ
« Ответ #4 : 23.05.2019, 12:59:33 »
php-способ:
$_REQUEST['param1'] = $value1;

joomla-способ:
JFactory::getApplication()->input->set('param2', $value2);
На связи в telegram @sivers
sivers @ inbox . ru
https://sivers.su/
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: Гет Параметры и ЧПУ
« Ответ #5 : 23.05.2019, 13:02:29 »
Как мне тогда передать параметры в модель или контроллер? Как? У меня параметры приходят, но все что я могу сейчас с ними сделать это вывести их
ну так у вас в onBeforeParseRoute есть переменная $vars, заполняйте же ее нужными ключ-значение, если вам надо внутри роутера подменять логику

JFactory::getApplication()->input->set('param2', $value2);
ну или так можно, да, если надо куда то дальше передать
« Последнее редактирование: 23.05.2019, 13:05:56 от dmitry_stas »
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

Kto-to3oneT

  • Новичок
  • 9
  • 0 / 0
Re: Гет Параметры и ЧПУ
« Ответ #6 : 23.05.2019, 17:27:23 »
Цитировать
JFactory::getApplication()->input->set('param2', $value2);
попробовал, я выяснил следующее.после того как отрабатывает мой onBeforeParseRoute то jshoppingParseRoute не может войти ни в одно условие и возвращает JError::raiseError(404, _JSHOP_PAGE_NOT_FOUND);
И ошибка по прежнему вываливается ERR_CONTENT_DECODING_FAILED. Почему она кстати, а не 404?
Я пробовал затыкивать $vars - гет параметрами, пробовал туда вкидывать $vars['controller'] = "products" и $vars['view'] = "products" но проблема по прежнему не решается.
В чем в принципе может быть моя ошибка? Возможно мне стоит попробовать в $vars засовывать иные параметры? Должны ли там присутствовать мои гет параметры?
Причем, я отследил движуху, когда я вхожу в каталог, я вижу что в jshoppingParseRoute вообще не заходит(без гет параметров если) :o
Вероятно из за того, что это корневой пункт меню. но если я дописываю параметры гет через слеш, то заходит в jshoppingParseRoute.

*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: Гет Параметры и ЧПУ
« Ответ #7 : 23.05.2019, 18:34:23 »
В чем в принципе может быть моя ошибка?
трудно сказать без понимания что вы пытаетесь сделать

Возможно мне стоит попробовать в $vars засовывать иные параметры? Должны ли там присутствовать мои гет параметры?
если они нужны роутеру, и от них зависит логика роутера - то да

когда я вхожу в каталог, я вижу что в jshoppingParseRoute вообще не заходит
когда URL соответствует пункту меню, то отработает меню, а до роутер компонента дело даже не дойдет. что логично, зачем туда передавать управление, если по меню и так понятно, что это и какие параметры

если я дописываю параметры гет через слеш, то заходит в jshoppingParseRoute
потому что по начальной части URL роутер Joomla определяет, какой это пункт меню, определяет что этому пункту меню соответствует компонент ЖШ, но поскольку URL не полностью соответствует пункту меню, то он передает дальнейший разбор URL внутрь этого компонента, его роутеру
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

Kto-to3oneT

  • Новичок
  • 9
  • 0 / 0
Re: Гет Параметры и ЧПУ
« Ответ #8 : 23.05.2019, 20:24:06 »
Цитировать
трудно сказать без понимания что вы пытаетесь сделать
Ну, смотрите, есть страница каталога. В ней есть фильтр. Отмечая фильтр, в URL записываются гет параметры. Типа вот таких ?order=40&limit=40&extra_fields=200..
Мне же нужно из этой строчки сделать такую 40/40/200 - грубо говоря
Я не совсем понимаю какой алгоритм моих действий должен быть.
первое что я сделал это записал в onAfterBuildRoute примерно следующее
Код
if(isset($query['order']){
     $segments[] = $query['order'];
      unset($query['order']);
}
if(isset($query['limit]){
      $segments[] = $query['limit'];
      unset($query['limit']);
}
if(isset($query['extra_fields]){
      $segments[] = $query['extra_fields'];
      unset($query['extra_fields']);
}
        ...
Теперь при все гет параметры с помощью JRoute::_("index.php?order=40&limit=40&extra_fields=300") записываются так 40/40/200, верно же?
Что же по логике вещей мне нужно записать в onBeforeParseRoute?
Так же отмечу, что $menuItem->query['view'] = "products"
$menuItem->route = 'catalog', link = index.php?option=com_jshopping&view=products.
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: Гет Параметры и ЧПУ
« Ответ #9 : 23.05.2019, 20:55:32 »
Что же по логике вещей мне нужно записать в onBeforeParseRoute?
вам нужно из этой строки 40/40/200 получить обратно order=40&limit=40&extra_fields=200 и записать их в массив $vars в виде пар $key=>$value, а из $segments эти сегменты 40/40/200 удалить
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

Kto-to3oneT

  • Новичок
  • 9
  • 0 / 0
Re: Гет Параметры и ЧПУ
« Ответ #10 : 24.05.2019, 12:31:04 »
Цитировать
вам нужно из этой строки 40/40/200 получить обратно order=40&limit=40&extra_fields=200 и записать их в массив $vars в виде пар $key=>$value, а из $segments эти сегменты 40/40/200 удалить
Благодарю! Теперь я кажется сдвинулся с мертвой точки. Я сделал как вы сказали, но теперь я опять воткнулся в стенку)
1) я добавил в onBeforeParseRoute
Код
$vars['order'] = $segments[0];
$vars['view'] = 'products';
$vars['controller'] = 'products';
...
unset($segments[0]);
...
Что бы jshopping открывал мне страницу "каталог" с гетом. Но в этом случае пропадают мои гет параметры. Я перехожу по ссылке, а он мне тупо открывает site/catalog. Вместо site/catalog/40 с нужным мне набором товаров.
Если же я убираю из роута вью и котроллер, то открывается непонятно что, товаров нет, просто корневой путь категорий которые не имеют отношения к этой странице, видимо из за того, что не отрабатывает ни один контроллер.

Так же я попробовал сделать так
JFactory::getApplication()->redirect(SEFLink("index.php?order={$vars['order']}", 0));
или так
JFactory::getApplication()->redirect(SEFLink("index.php?option=com_jshopping&view=products&order={$vars['order']}", 0));
но эти строки приводят к бесконечному редиректу, что в принципе логично.

А подобная строка JFactory::getApplication()->input->set('order', $vars['order']); не помогает, ведь происходит перезагрузка странице.

Как можно выкрутиться из ситуации?
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: Гет Параметры и ЧПУ
« Ответ #11 : 24.05.2019, 12:37:51 »
Но в этом случае пропадают мои гет параметры. Я перехожу по ссылке, а он мне тупо открывает site/catalog
хм, такого не должно быть. unset в роутере никак не влияет на саму адресную строку. это у вас видимо какой то редирект срабатывает, дополнительно что то установлено видимо. посмотрите в консоли, наверняка есть редирект
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

Kto-to3oneT

  • Новичок
  • 9
  • 0 / 0
Re: Гет Параметры и ЧПУ
« Ответ #12 : 27.05.2019, 18:24:55 »
Цитировать
хм, такого не должно быть. unset в роутере никак не влияет на саму адресную строку. это у вас видимо какой то редирект срабатывает, дополнительно что то установлено видимо. посмотрите в консоли, наверняка есть редирект
спасибо за помощь! Действительно есть редирект который портил. А так без него действительно все работает нормально. Благодарю)
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться