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

plgman

  • Новичок
  • 3
  • 0 / 0
Добрый день,

Есть компонент (jshopping) и есть плагин (Widgetkit от Yootheme). Плагин должен вызываться на onContentPrepare.
Пытаюсь впилить один в другой, но пока безуспешно. Активно вставляют палки в колёса ужасное знание php и плохое представление о внутренней архитектуре Joomla.

Собственно что удалось сделать:
удалось догадаться, что за вывод статьи о категории (именно туда мне необходимо впилить этот несчастный плагин) отвечает супер короткий components/com_jshopping/views/category/view.html.php
удалось найти файл, в котором этот плагин уже впилен ( components/com_content/views/article/view.html.php )
удалось понять как оно приблизительно работает на уровне:
  • грузятся какие-то переменные (содержимое статьи, параметры всякие и прочие имена пользователей)
  • в какие-то переменные записывается результаты обработки текста плагинами
  • магия
  • и сразу же выводится готовый результат.

Магия заключается в том, что совершенно неочевидно (вполне вероятно, из-за палок в колёсах)
Код: php
// it;s part of components/com_content/views/article/view.html.php
   JPluginHelper::importPlugin('content');
                $results = $dispatcher->trigger('onContentPrepare', array ('com_content.article', &$item, &$this->params, $offset));

                $item->event = new stdClass();
                $results = $dispatcher->trigger('onContentAfterTitle', array('com_content.article', &$item, &$this->params, $offset));
                $item->event->afterDisplayTitle = trim(implode("\n", $results));

                $results = $dispatcher->trigger('onContentBeforeDisplay', array('com_content.article', &$item, &$this->params, $offset));
                $item->event->beforeDisplayContent = trim(implode("\n", $results));

                $results = $dispatcher->trigger('onContentAfterDisplay', array('com_content.article', &$item, &$this->params, $offset));
                $item->event->afterDisplayContent = trim(implode("\n", $results));

                // Increment the hit counter of the article.
                if (!$this->params->get('intro_only') && $offset == 0) {
                        $model = $this->getModel();
                        $model->hit();
                }

                //Escape strings for HTML output
                $this->pageclass_sfx = htmlspecialchars($this->item->params->get('pageclass_sfx'));

                $this->_prepareDocument();

                parent::display($tpl);
все изменения оказываются в $tpl, который, собственно, и выводится.

Что я натворил в jshopping:
было:
Код: php
<?php
defined( '_JEXEC' ) or die( 'Restricted access' );
jimport( 'joomla.application.component.view');

class JshoppingViewCategory extends JView
{
protected $item;
    function display($tpl = null){
        parent::display($tpl);
        }
}
?>
стало:
Код: php
<?php
defined( '_JEXEC' ) or die( 'Restricted access' );
jimport( 'joomla.application.component.view');

class JshoppingViewCategory extends JView
{
protected $item;
    function display($tpl = null){
                $app            = JFactory::getApplication();
                $dispatcher     = JDispatcher::getInstance();
                $this->item             = $this->get('Item');

                $item = &$this->item;
 
        JPluginHelper::importPlugin('content');
        $results = $dispatcher->trigger('onContentPrepare', array ('com_content.article', &$item, '', 0));
        parent::display($tpl);
        }
}
?>
собственно мне  не понятно. как результат обработки плагина впихнуть в $tpl. если я вообще в правильном направлении копаю.
зы в логах ошибка:
[Fri Mar 09 03:42:50 2012] [error] [client 8.8.8.8] PHP Warning:  Parameter 2 to plgContentWidgetkit_Content::onContentPrepare() expected to be a reference, value given in /home/user/www/site/libraries/joomla/event/event.php on line 71

спасибо за потраченное время на чтение поста. и за возможную подсказку.
« Последнее редактирование: 09.03.2012, 04:19:13 от plgman »
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
Re: Подключение плагина к компоненту
« Ответ #1 : 09.03.2012, 04:21:17 »
обработка плагинов в компоненте
$text = JHTML::_('content.prepare', $text);
Текст в $text будет обрабатываться плагинами слушающими событие onPrepareContent
*

plgman

  • Новичок
  • 3
  • 0 / 0
Re: Подключение плагина к компоненту
« Ответ #2 : 09.03.2012, 13:17:37 »
обработка плагинов в компоненте
$text = JHTML::_('content.prepare', $text);
Текст в $text будет обрабатываться плагинами слушающими событие onPrepareContent
Хм. Спасибо. Но какую переменную мне необходимо подставить на место $text?
Если поставить $tpl, то текст не обрабатывается.

а, хотя, судя по всему, я не там копаюсь. похоже надо в контроллер лезть. там есть что-то похожее на вызов плагинов. пойду там код попорчу.
« Последнее редактирование: 09.03.2012, 13:49:27 от plgman »
*

plgman

  • Новичок
  • 3
  • 0 / 0
Re: Подключение плагина к компоненту
« Ответ #3 : 09.03.2012, 15:22:08 »
Poznakomlus,
спасибо. Ваш комментарий очень помог.
в com_jshopping/controllers/category.php нужно было добавить
Код: php
$category->description = JHTML::_('content.prepare', $category->description) ;
и всё заработало как нужно.
*

lakshmi

  • Захожу иногда
  • 188
  • 5 / 0
Re: Подключение плагина к компоненту
« Ответ #4 : 16.07.2012, 10:34:57 »
обработка плагинов в компоненте
$text = JHTML::_('content.prepare', $text);
Текст в $text будет обрабатываться плагинами слушающими событие onPrepareContent
Да но как мне быть если плагин активируется кодом {chronoforms}forma{/chronoforms}? Может быть как то можно загнать в массив данную форму?
« Последнее редактирование: 16.07.2012, 10:42:57 от lakshmi »
*

lakshmi

  • Захожу иногда
  • 188
  • 5 / 0
Re: Подключение плагина к компоненту
« Ответ #5 : 16.07.2012, 10:51:09 »
Для примера прописал $this->product->product_s_desc = JHTML::_('content.prepare', $this->product->product_s_desc); начало обрабатывать плагином краткое описание, но это не то мне нужно разместить код формы непосредственно в шаблоне что бы в каждой карточке товара выводилась форма.



Разобрался все намного проще  ;D
« Последнее редактирование: 24.07.2012, 19:10:31 от lakshmi »
*

nano

  • Осваиваюсь на форуме
  • 16
  • 0 / 0
Re: Подключение плагина к компоненту
« Ответ #6 : 25.07.2012, 11:58:45 »
Разобрался все намного проще  ;D

Так подскажите как ?
*

lakshmi

  • Захожу иногда
  • 188
  • 5 / 0
Re: Подключение плагина к компоненту
« Ответ #7 : 18.09.2012, 17:45:45 »
Так подскажите как ?
Примерно так:
Код
<?php  $ret="{loadposition cart}";
$mod = JHTML::_('content.prepare', $mod);
echo $mod;?>
;D *DRINK*
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
*

lakshmi

  • Захожу иногда
  • 188
  • 5 / 0
Re: Подключение плагина к компоненту
« Ответ #9 : 18.09.2012, 18:16:11 »
Код: php
<?php echo JHTML::_('content.prepare', '{loadposition cart}'); ?>
Должно и так работать
Ну я не совсем профи но буду знать спасибо :D, Ваш вариант читабельнее.
*

20dollars

  • Захожу иногда
  • 235
  • 4 / 2
Re: Подключение плагина к компоненту
« Ответ #10 : 16.02.2013, 14:40:19 »
Код: php
<?php echo JHTML::_('content.prepare', '{loadposition cart}'); ?>
Должно и так работать

Подскажите пожалуйста, как данный рецепт применить к плагину ExtraVote для JoomShopping. Конкретнее, интересует вывод звезд рейтинга для голосования за товар в шаблоне страницы карточки товара.
В контенте стандартных материалов плагин может обрабатывать код {extravote #} где # id рейтинга. В шаблоне же JoomShopping выводит просто  текст {extravote #}
*

prizrakx

  • Осваиваюсь на форуме
  • 13
  • 0 / 0
Re: Подключение плагина к компоненту
« Ответ #11 : 20.01.2014, 15:46:27 »
А как можно подключить плагин контента к компоненту (joomshopping)?
Спойлер
[свернуть]
не работает=(
*

lakshmi

  • Захожу иногда
  • 188
  • 5 / 0
Re: Подключение плагина к компоненту
« Ответ #12 : 21.01.2014, 15:16:29 »
А как можно подключить плагин контента к компоненту (joomshopping)?
Спойлер
[свернуть]
не работает=(

А куда вставляете? По идее должен работать поскольку это код самой Joomla,  ане только VirtueMart
*

prizrakx

  • Осваиваюсь на форуме
  • 13
  • 0 / 0
Re: Подключение плагина к компоненту
« Ответ #13 : 21.01.2014, 23:35:25 »
Разобрался, плагин подгружался все равно, надо было дивы прописать, спасибо Elle
*

qRock

  • Осваиваюсь на форуме
  • 25
  • 1 / 0
Re: Подключение плагина к компоненту
« Ответ #14 : 10.02.2014, 23:06:56 »
Такая же проблема, как и у lakshmi.
Есть плагин LVSpoiler и компонент Spider Catalog, в котором спойлер не работает.
Спойлер вызывается командой:
{spoiler title=Заголовок opened=1}Скрытый текст{/spoiler}
А в компоненте просто текст(
Что только и куда только не пытался вставить
Код
(<?php echo JHTML::_('content.prepare', '{loadmodule LVSpoiler}'); ?>) 
(<?php echo JHTML::_('content.prepare', '{loadposition Tabs}'); ?>)
($text = JHTML::_('content.prepare', $text);)
что только вместо text не вставлял.
Пожалуйста, помогите чайнику.
*

lakshmi

  • Захожу иногда
  • 188
  • 5 / 0
Re: Подключение плагина к компоненту
« Ответ #15 : 11.02.2014, 02:57:56 »
А так не пробовали?
Код
<?php echo JHTML::_('content.prepare', '{spoiler title=Заголовок opened=1}Скрытый текст{/spoiler}'); ?>
*

qRock

  • Осваиваюсь на форуме
  • 25
  • 1 / 0
Re: Подключение плагина к компоненту
« Ответ #16 : 11.02.2014, 17:47:04 »
lakshmi попробовал. Но имхо вместо слова "Заголовок" и "Скрытый текст" должен быть какой-то ключ наверно.
« Последнее редактирование: 11.02.2014, 18:21:24 от qRock »
*

qRock

  • Осваиваюсь на форуме
  • 25
  • 1 / 0
Re: Подключение плагина к компоненту
« Ответ #17 : 12.02.2014, 11:10:04 »
С нереальной помощью юзера Arkadiy в топике его чудо-спойлера, все-таки решил проблему. Если у кого-нибудь возникнет подобная ситуация, ищите шаблон вывода материала (у Spider Catalog это views/showproduct/tmpl/default.php) и заменяйте $row->description кодом JHTML::_('content.prepare', $row->description)
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Дополнительные параметры пунктов меню для плагина

Автор enshtein

Ответов: 3
Просмотров: 3002
Последний ответ 06.11.2014, 16:48:17
от lebmarg
Доработка плагина

Автор Ragnos

Ответов: 19
Просмотров: 2093
Последний ответ 07.07.2014, 16:14:16
от zomby6888
Подключение js файла и кнопка прикреления

Автор __noob__

Ответов: 6
Просмотров: 1759
Последний ответ 20.05.2014, 00:24:40
от Fedor Vlasenko
Нужна помощь в разработке плагина. Цена?

Автор jason1311

Ответов: 0
Просмотров: 1204
Последний ответ 15.05.2014, 18:20:10
от jason1311
Как запустить выполнение плагина принудительно из модуля?

Автор NemoNik

Ответов: 8
Просмотров: 2258
Последний ответ 14.05.2014, 17:35:04
от NemoNik