Новости Joomla

SW JProjects v.2.5.0 - компонент каталога цифровых проектов на Joomla

SW JProjects v.2.5.0 - компонент каталога цифровых проектов на Joomla

👩‍💻 SW JProjects v.2.5.0 - компонент каталога цифровых проектов на Joomla.Компонент - менеджер цифровых проектов для Joomla! CMS. Компонент обеспечивает создание каталога цифровых проектов и предоставляет возможность скачивания, в том числе с использованием лицензионных ключей.👩‍💻 v.2.5.0. Что нового?Схемы структур данных для серверов обновлений. Теперь с SW JProjects вы может создавать сервер обновлений не только для расширений Joomla, но и свои собственные. Например, вам нужно, чтобы структура данных сервера обновлений была другая и формат должен быть, например, не XML, а JSON. Формирование структуры данных для сервера обновлений расширений Joomla вынесено в отдельный плагин. Вы можете создать свой собственный плагин и реализовать в нём нужную вам структуру данных, добавив или наоборот исключив отображаемые данные. Сервер обновлений в компоненте по-прежнему отображает информацию о списке проектов и их версиях, о конкретном проекте и его changelog.Можно выбрать схему данных сервера обновлений глобально для всего компонента, выбрать другую схему данных для категории проектов, а так же выбрать схему в каждом проекте.

Разработчикам в качестве образца можно посмотреть плагин схемы данных для Joomla в составе компонента или же плагин-образец JSON-схемы на GitHub.
Группа плагинов swjprojects. Для нужд компонента создана группа плагинов swjprojects. В частности, в этой группе находится плагин структуры данных Joomla расширений для сервера обновлений.Изменение языковых констант. Изменены некоторые языковые константы в панели администратора. Если вы делали переопределение констант - переопределите их снова.👩‍💻 Joomla 6. Внесены изменения для корректной установки и работы компонента на Joomla 6. Компонент успешно протестирован на Joomla 6-beta2.Минимальная версия Joomla - 5. Подняты минимальные системные требования: Joomla 5.0.0 и PHP 8.1.
- Страница расширения👉 Плагин-образец кастомной JSON-схемы данных для сервера обновлений на GitHub.- GitHub расширения- Документация на GitHub- Joomla Extensions Directory#joomla #расширения

Как триггерить события для плагинов на манер Joomla 5+?В Joomla 6 должны удалить метод...

Как триггерить события для плагинов на манер Joomla 5+?В Joomla 6 должны удалить метод...

👩‍💻 Как триггерить события для плагинов на манер Joomla 5+?В Joomla 6 должны удалить метод triggerEvent(), с помощью которого раньше вызывались события для плагинов. Теперь чтобы в своём коде вызвать событие для плагина и получить от него результаты нужно:- создать объект класса события- передать в него параметры

use Joomla\CMS\Event\AbstractEvent;use Joomla\CMS\Factory;use Joomla\CMS\Plugin\PluginHelper;// Грузим плагины нужных группPluginHelper::importPlugin('system');// Создаём объект события$event = AbstractEvent::create('onAfterInitUniverse', [    'subject' => $this,    'data'    => $data, // какие-то данные    'article' => $article, // ещё материал вдовесок    'product' => $product, // и товаров подвезли]);// Триггерим событиеFactory::getApplication()->getDispatcher()->dispatch(    $event->getName(), // Тут можно строку передать 'onAfterInitUniverse'    $event);// Получаем результаты// В случае с AbstractEvent это может быть не 'result',// а что-то ещё - куда сами отдадите данные.// 2-й аргумент - значение по умолчанию, // если не получены результаты$results = $event->getArgument('result', []);
Плюсы такого подхода - вам не нужно запоминать порядок аргументов и проверять их наличие. Если вы написали свой класс события, то в плагине можно получать аргументы с помощью методов $event->getArticle(), $event->getData(), $event->getProduct() и подобными - реализуете сами под свои нужды. Если такой класс события написали, то создаёте экземпляр своего класса события и укажите его явно в аргументе eventClass
use Joomla\Component\MyComponent\Administrator\Event\MyCoolEvent;$event = MyCoolEvent::create('onAfterInitUniverse', [    'subject'    => $this,    'eventClass' => MyCoolEvent::class, // ваш класс события    'data'       => $data, // какие-то данные    'article'    => $article, // ещё материал вдовесок    'product'    => $product, // и товаров подвезли]);
Ожидаемо, что класс вашего события будет расширять AbsractEvent или другие классы событий Joomla.🙁 Есть неприятный нюанс - нельзя просто так вызывать событие и ничего не передать в аргументы. Аргумент subject обязательный. Но если вы всё-таки не хотите туда ничего передавать - передайте туда пустой stdClass или объект Joomla\registry\Registry.
@joomlafeed#joomla #php #webdev

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

Archie

  • Захожу иногда
  • 67
  • 1 / 0
Поиск в VirtueMart 2
« : 16.02.2012, 23:02:59 »
При попытке найти перекидывает в каталог продукции и снизу результаты поиска. Более того если нет совпадений просто выводится каталог и даже нет слов мол по вашему запросу ничего не найдено.
Как сделать что б поиск был на своей странице и если нет совпадений то выводилось об этом сообщение?  *DRINK*
*

SpaceRabbit

  • Осваиваюсь на форуме
  • 33
  • 11 / 0
Re: Поиск в VirtueMart 2
« Ответ #1 : 06.04.2012, 11:56:04 »
возникала подобная проблема, отвечал в теме ниже:
разобрался, сделал вывод результатов поиска над всеми категориями, редактируем файл:
components\com_virtuemart\views\category\tmpl\default.php
меняем блоки местами, настраиваем по-вкусу))

p.s. также полезно добавить в шаблон вывод message (над блоком контента)
*

sann

  • Осваиваюсь на форуме
  • 13
  • 0 / 0
Re: Поиск в VirtueMart 2
« Ответ #2 : 10.04.2012, 13:11:15 »
SpaceRabbit, спасибо. Очень помогли.
Еще вопрос есть. Как сделать так, чтобы поиск не искал в названиях категорий товаров, а только в названиях самих товаров?
*

Annaweb

  • Захожу иногда
  • 242
  • 3 / 0
Re: Поиск в VirtueMart 2
« Ответ #3 : 10.04.2012, 17:28:13 »
возникала подобная проблема, отвечал в теме ниже:
p.s. также полезно добавить в шаблон вывод message (над блоком контента)

а какие блоки местами поменять надо ?
там довольно много в коде..
*

sann

  • Осваиваюсь на форуме
  • 13
  • 0 / 0
Re: Поиск в VirtueMart 2
« Ответ #4 : 10.04.2012, 18:12:08 »
Annaweb, я поменяла местами DIV CATEGORY-VIEW и DIV BROWSE-VIEW.
*

AlexAkhremenko

  • Новичок
  • 9
  • 2 / 0
Re: Поиск в VirtueMart 2
« Ответ #5 : 11.04.2012, 16:58:49 »
Вижу у вас все работает как добились результата?_)


В настройках в блоке "Доступные поля для поиска" оставил только:

Название товара
Полное описание
Производитель
Название категории

Какие поля убрать нужно, а какие оставить, я не определял. Но у меня точно проблема была из-за поля "Дата добавления". Убрал галочку, и теперь ищет! =) Поиграйте с галочками.
*

Annaweb

  • Захожу иногда
  • 242
  • 3 / 0
Re: Поиск в VirtueMart 2
« Ответ #6 : 16.04.2012, 17:00:09 »
В настройках в блоке "Доступные поля для поиска" оставил только:

Название товара
Полное описание
Производитель
Название категории

Какие поля убрать нужно, а какие оставить, я не определял. Но у меня точно проблема была из-за поля "Дата добавления". Убрал галочку, и теперь ищет! =) Поиграйте с галочками.

Помогло! спасибо
*

Serhiy_P

  • Осваиваюсь на форуме
  • 20
  • 0 / 0
Re: Поиск в VirtueMart 2
« Ответ #7 : 13.10.2012, 14:10:55 »
В настройках в блоке "Доступные поля для поиска" оставил только:

Название товара
Полное описание
Производитель
Название категории


Где эти настройки? Не могу найти...
*

georgik

  • Захожу иногда
  • 99
  • 0 / 0
Re: Поиск в VirtueMart 2
« Ответ #8 : 08.11.2012, 15:36:37 »
у меня почему-то поиск стал работать когда в Полях для поиска выбрано только одно поле, когда больше одного - ничего не ищет.
Версия ВМ последняя на данный момент. У кого-то еще так же есть?

Serhiy_P, Настройка-Настройка сортировки
*

orangelev

  • Новичок
  • 5
  • 0 / 0
Re: Поиск в VirtueMart 2
« Ответ #9 : 18.12.2012, 14:11:53 »
Добрый день!
Подскажите пожалуйста, как сделать, чтобы когда нет результатов поиска (нет совпадений), выводилось об этом сообщение? У меня отображается лишь пустой лист.

Пробую в templates\мой шаблон\html\com_virtuemart\category\default.php (изменения вношу сюда, а не в components\com_virtuemart\views\category\tmpl\default.php, поскльку перед обновлением VirtueMart до последний версии нужно было сохранить мои изменения) добавить:

Код
	
<?php
if ($this->search == NULL) {
echo JText::_ ('COM_VIRTUEMART_NO_RESULT'). ($this->keyword ? ' : (' . $this->keyword . ')' : '');
}
?>

Но это не помогает. Если результатов поиска нет, то не выводится вообще ничего.
*

Krava_Dima

  • Захожу иногда
  • 84
  • 1 / 0
Re: Поиск в VirtueMart 2
« Ответ #10 : 07.01.2013, 22:17:01 »
Не работает поиск абсолютно. Ввожу слово в строку поиска нажимаю поиск, и никаких результатов ((
*

saimand

  • Новичок
  • 3
  • 0 / 0
Re: Поиск в VirtueMart 2
« Ответ #11 : 09.01.2013, 07:42:24 »
Не работает поиск абсолютно. Ввожу слово в строку поиска нажимаю поиск, и никаких результатов ((

Аналогично! Если найдете решение, поделитесь пожалуйста!
*

georgik

  • Захожу иногда
  • 99
  • 0 / 0
Re: Поиск в VirtueMart 2
« Ответ #12 : 11.01.2013, 15:40:17 »
у меня поиск происходит только в по одной категории, причем не знаю почему именно по этой ( она была первой заведена ).
Поля для поиска выбраны:
Название товара
Описание
Полное описание
Артикул
Уведомлять, если товара на складе осталось меньше
*

Krava_Dima

  • Захожу иногда
  • 84
  • 1 / 0
Re: Поиск в VirtueMart 2
« Ответ #13 : 12.01.2013, 01:39:02 »
а в подкатегориях ищет?
*

Krava_Dima

  • Захожу иногда
  • 84
  • 1 / 0
Re: Поиск в VirtueMart 2
« Ответ #14 : 12.01.2013, 01:39:17 »
или только в основной категории?
*

georgik

  • Захожу иногда
  • 99
  • 0 / 0
Re: Поиск в VirtueMart 2
« Ответ #15 : 12.01.2013, 11:08:28 »
В подкатегориях не ищет. То ищет, то не ищет, живет своей жизнью
*

3auka82

  • Новичок
  • 8
  • 0 / 0
Re: Поиск в VirtueMart 2
« Ответ #16 : 14.01.2013, 15:18:02 »
Присоединясь к Krava_Dima.
*

Krava_Dima

  • Захожу иногда
  • 84
  • 1 / 0
Re: Поиск в VirtueMart 2
« Ответ #17 : 20.01.2013, 15:12:36 »
Не работает поиск абсолютно. Ввожу слово в строку поиска нажимаю поиск, и никаких результатов ((

Обновил VirtueMart и все модули, поиск заработал! Ищет именно по товару, не зависимо от того в какой категории находится.
*

forevernadin

  • Осваиваюсь на форуме
  • 11
  • 2 / 0
Re: Поиск в VirtueMart 2
« Ответ #18 : 23.04.2014, 11:16:53 »
Добрый день! Подскажите, пожалуйста, как можно организовать автокоррекцию раскладки при вводе слов в поле поиска, соответственно с английского на русский, может есть у кого полезная информация по этому вопросу?
*

spookyr31

  • Осваиваюсь на форуме
  • 32
  • 2 / 0
Re: Поиск в VirtueMart 2
« Ответ #19 : 16.02.2015, 19:48:08 »
Здравствуйте, а как выводить количество найденных товаров?
*

nas_00

  • Новичок
  • 3
  • 0 / 1
Re: Поиск в VirtueMart 2
« Ответ #20 : 13.05.2015, 15:02:40 »
Может кто подскажет как сделать так, что бы поиск находил текст из описания категорий VirtueMart..товары находит, текст из стаей Joomla находит, а вот текст из описания категории игнорит..как это иcправить? Используется стандартный поиск Joomla.
*

Mantis665

  • Новичок
  • 1
  • 0 / 0
Re: Поиск в VirtueMart 2
« Ответ #21 : 11.06.2015, 23:43:37 »
Возникла проблема если зайти в категорию то при поиске товара с другой категории ничего не выдает, к сожалению возможности обновить VM не было т.к много изменений сделал но проблему решил следующим образом.
В файле
modules/mod_virtuemart_search/tmpl/default.php

Строку 4-ую
Цитировать
<form action="<?php echo ('index.php?option=com_virtuemart&view=category&search=true&limitstart=0' ); ?>" method="get">
заменил на
Цитировать
<form action="<?php echo JURI::base(); ?>" method="get">

Позже обнаружилось при переходе на вторую страницу поиска результатов страница отображалась неккоректно, помогло добавление строчки

Код
<input type="hidden" name="option" value="com_virtuemart" />
<input type="hidden" name="view" value="category" />
<input type="hidden" name="search" value="true" />
<input type="hidden" name="limitstart" value="0" />
в конце того же файла.
« Последнее редактирование: 28.06.2015, 02:11:37 от Mantis665 »
*

vet27

  • Осваиваюсь на форуме
  • 11
  • 0 / 0
Re: Поиск в VirtueMart 2
« Ответ #22 : 17.01.2016, 01:15:00 »
Прошу помощи!   !
Перестал работать дефолтный поиск vm-search
При попытке поиска перекидывает на главную страницу VirtueMart, с категориями
До какого-то момента работал отлично. Virt 3.0.12

Что делал:
- создал в скрытом меню пункт на главную марта
- натыкал галок в "доступных полях для поиска" в настройках VirtueMart
- отключал-включал в настройках Joomla чпу
- переустанавливал сам модуль поиска vm
- наконец, установил сторонний модуль AJAX Live Search results

Симптомы такие же: перекидывает на страницу категорий  :o

Буду очень признателен за  совет, не хочется откатываться  :'( да и кому-нить еще может будет полезна инфа
« Последнее редактирование: 17.01.2016, 01:55:29 от vet27 »
*

vet27

  • Осваиваюсь на форуме
  • 11
  • 0 / 0
Re: Поиск в VirtueMart 2
« Ответ #23 : 17.01.2016, 01:24:08 »
сайт tryled точка ru
*

vet27

  • Осваиваюсь на форуме
  • 11
  • 0 / 0
Re: Поиск в VirtueMart 2
« Ответ #24 : 17.01.2016, 18:29:29 »
Поправка! Проблема становится всё интереснее
Обнаружилось, что не просто упал поиск, но и товар во многих категориях перестал отображаться! Так вот если искать поиском товар, который находится в этих категориях, то соответственно ничего и не ищется и не пишется. Но! Есть рабочие категории, например эта: .../katalog/vrashchayushchiesya-golovy/wash
Так вот если вбивать в поиск товар именно из этой категории, то всё прекрасно ищется )
Как быть куда копать?
*

Liss

  • Захожу иногда
  • 238
  • 10 / 0
Re: Поиск в VirtueMart 2
« Ответ #25 : 26.01.2016, 19:18:21 »
Добрый день!
Подскажите пожалуйста, как сделать, чтобы когда нет результатов поиска (нет совпадений), выводилось об этом сообщение? У меня отображается лишь пустой лист.

Пробую в templates\мой шаблон\html\com_virtuemart\category\default.php (изменения вношу сюда, а не в components\com_virtuemart\views\category\tmpl\default.php, поскльку перед обновлением VirtueMart до последний версии нужно было сохранить мои изменения) добавить:

Код
	
<?php
if ($this->search == NULL) {
echo JText::_ ('COM_VIRTUEMART_NO_RESULT'). ($this->keyword ? ' : (' . $this->keyword . ')' : '');
}
?>

Но это не помогает. Если результатов поиска нет, то не выводится вообще ничего.
У меня логическая структура в шаблоне категории такова:

if (!empty($this->products)) {
  // код вывода содержимого категории, в том числе результатов поиска
}
elseif (!empty($this->keyword)) { // тут алгоритм такой: если товаров нет (т.к. если они есть, то это отрабатывается в первом if), а ключевой запрос не пуст, то выводим сообщение, что по слову "какоето_слово" ничего не найдено
  echo JText::_ ('COM_VIRTUEMART_NO_RESULT'). ($this->keyword ? ' : (' . $this->keyword . ')' : '');
}
*

Eholov

  • Захожу иногда
  • 170
  • 14 / 0
Была проблема в том, что в модуль Universal AJAX Live Search выводит нужные результаты в своем раскрывающемся списке, но при нажатии Enter страница результатов поиска пустая. Я сделал в этом модуле так, чтоб он искал и по полю Мета ключевые слова (в плагине этого модуля в файле plugins\search\vmxsearch\vmxsearch.php поменял везде p.product_desc на p.metakey)


но вот стандартная страница поиска срезает эти результаты. И в настройках VirtueMart 2 нельзя поставить поиск по metakey и в кодах я не нашел где задаются поля для поиска.
Подскажите, если кто знает. Судя по всему они задаются в базе. В таблице _virtuemart_configs нашел строки
Код
a:4:{i:0;s:12:"product_name";i:1;s:15:"`p`.product_sku";i:2;s:14:"product_s_desc";i:3;s:13:"product_price"

дописал
i:4;s:23:"p`.metakey";
выдает ошибку на сайте "Exception in loadConfig for unserialize browse_search_fields .... с сылкой на настройку полей для поиска.
Нашел решение. В файле administrator\components\com_virtuemart\helpers\shopfunctions.php в строку $filterArray = array('product_name', 'created_on' .... добавляем название нужного поля. Если поле находится в таблице virtuemart_products_ru_ru, то название поля без p. Если поле находится в таблице  virtuemart_products то только название поля. У меня это 'metakey' И все. В VirtueMart - Настройки - Доступные поля для поиска - появляется ваше поле, которое надо отметить.
« Последнее редактирование: 09.02.2016, 09:54:22 от Eholov »
*

REandH

  • Осваиваюсь на форуме
  • 24
  • 0 / 0
Re: Поиск в VirtueMart 2
« Ответ #27 : 17.08.2016, 11:58:42 »
но вот стандартная страница поиска срезает эти результаты. И в настройках VirtueMart 2 нельзя поставить поиск по metakey и в кодах я не нашел где задаются поля для поиска.
// Хак Фильтра категорий поисковика. Ищем файл
modules/mod_universal_ajaxlivesearch/mod_universal_ajaxlivesearch.php // <form id="search-form<... (Строка 252) Нужно поменять action (Сделать такой же как у стандартного модуля + Услови добавить - Фильтр категорий пропадет)
 
Код
 <?php
    if ($params->get('targetsearch', 0) == 1) {
  ?>
  <form id="search-form<?php echo $module->id; ?>" action="<?php echo JRoute::_('index.php?option=com_virtuemart&view=category&search=true&limitstart=0&virtuemart_category_id=0');/*JRoute::_('index.php?'.$formUrl.$itemid);*/ ?>" method="get" onSubmit="return false;">
  <?php
    } else {
  ?>
  <form id="search-form<?php echo $module->id; ?>" action="<?php echo JRoute::_('index.php?'.$formUrl.$itemid);?>" method="get" onSubmit="return false;">
  <?php
    }
  ?>
*

Eholov

  • Захожу иногда
  • 170
  • 14 / 0
Re: Поиск в VirtueMart 2
« Ответ #28 : 10.01.2017, 18:55:27 »
Для Joomla 3 и VirtueMart 3 редактировать надо файл  \plugins\search\virtuemart\virtuemart.php
в районе 130 строки добавляем
Код
$wheres2[] = "p.имя поля LIKE $word";	
p. - если поле из таблицы _virtuemart_products
и a. - если поле из таблицы _virtuemart_products_ru_ru
*

Mick

  • Осваиваюсь на форуме
  • 11
  • 0 / 0
Re: Поиск в VirtueMart 2
« Ответ #29 : 06.09.2017, 15:22:11 »
Добрый день, подскажите пожалуйста со следующей проблемой. Имеется Joomla 3.7.4 с VirtueMart 3. При использовании модуля поиска VM - Search in Shop товар в магазине находит, но если вбивать любую отсебятину не появляется текста о том, что товар не найдет или нет результатов поиска, отображается просто пустое прстранство. По совету выше хотел поменять местами дивы category-view и browse-view, однако в указанном файле browse-view находится внутри category-view и как их тогда менять местами, без глобальных перестановок в коде, не пойму.  >:(
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Расчёт стоимости товара в VirtueMart за периметр

Автор NIKOLY

Ответов: 0
Просмотров: 263
Последний ответ 04.07.2025, 09:18:31
от NIKOLY
VirtueMart 3 Отображать только товары в наличии!

Автор GaziroFFka

Ответов: 4
Просмотров: 3768
Последний ответ 06.06.2023, 13:55:13
от Akeksandr
SP VirtueMart Category Search

Автор ve1006

Ответов: 10
Просмотров: 7626
Последний ответ 18.01.2023, 10:39:10
от AzMandius
Как вывести модуль в страницу VirtueMart?

Автор harddrop

Ответов: 11
Просмотров: 4609
Последний ответ 13.11.2022, 13:11:37
от Evgen Kulibin
Как правильно настроить покупку в VirtueMart?

Автор varella

Ответов: 1
Просмотров: 2627
Последний ответ 12.10.2022, 16:14:04
от varella