VM 2.x Плагин для индексации товаров VM 2 "умным поиском" Joomla 2.5

Васька Пупенцов

Создатель
Регистрация
22 Июн 2011
Сообщения
14
Реакции
8
Создал плагин для индексации товаров VirtueMart 2.0.8 "умным поиском" Joomla 2.5.6. Помимо установки самого плагина потребуется также сделать легкий хак файла router.php компонента VirtueMart. Предлагаю скачать установочный файл плагина, а также доработанный файл router.php компонента com_virtuemart (см. прикрепленные к теме файлы: plg_finder_virtuemart.zip и router.zip). Краткую инструкцию по установке см.в прикрепленном файле: info.txt.

P.S.
Жду обратную связь от скачавших и установивших мой плагин. Работоспособность плагина не гарантирую, поскольку это новая, еще сырая разработка под связку J2.5.6+VM2.0.8.
 

Вложения

  • plg_finder_virtuemart.zip
    5,6 KB · Просмотры: 159
  • router.zip
    8,9 KB · Просмотры: 156
  • info.txt
    1,3 KB · Просмотры: 174
Прочитал info.txt - установка вроде не сложная, хотел бы узнать отличия от дефолтного (поиска)...скачал, отпишусь

Все без глюков проиндексировал (нашел), товаров 50шт - Joomla! 2.5.6; Virtuemart 2.0.6; Хотелось бы посмотреть работу индексатора с базами в несколько тысяч товаров...
 
Установил. Полёт нормальный, спасибо! Только при обновлении VM2 плагин может слететь, нужно иметь ввиду.
 
Установил. Полёт нормальный, спасибо! Только при обновлении VM2 плагин может слететь, нужно иметь ввиду.
Есть три варианта:
1. предложить разработчикам VM включить этот хак в будущие обновления router.php;
2. попробовать в папке helper создать новый файл route.php и описать в нем класс ContentHelperRoute с функцией getProductRoute, . В последнем случае также потребуется изменить класс с vmrouterHelper на ContentHelperRoute при вызове метода getProductRoute из функции index (класс plgFinderVirtuemart, описан в файле virtuemart.php плагина). Не факт, что это сработает, но попробовать можно.
3. Кэп :) Проверять, не затерло ли очередное обновление хак в файле router.php, если затерло, вручную добавлять описание функции getProductRoute в класс vmrouterHelper согласно инструкции.

Кстати, обнаружил косяк в коде плагина (файл virtuemart.php). Два раза прописал вызов метода getProductRoute из функции index в классе plgFinderVirtuemart. Исправленный плагин см.в прикрепленном к сообщению файле.
 

Вложения

  • plg_finder_virtuemart.zip
    5,6 KB · Просмотры: 73
  • Нравится
Реакции: rui
Привет, я долго искал подобный модуль, но ничего толкового не нашел.
Твой модуль работает на 5%
Объясню почему - у меня в базе 550 товаров (немного по сравнению с другими)
Поиск их все находит, но вот вопрос как - он выводит заголовок (то есть ссылку на товар и сам заголовок в умном поиске), только у 24 позиций. Причем добавляет к названию, в конце, пустые скобки - ()
При попытке найти товар, он находится, то есть подставляется в меню поиск, а вот дальнейший вывод на страницу происходит без заголовка и соответственно без ссылки.

Весь остальной текст, вне Virtuemart ищется отлично.

Пробовал и твой роутер кидал, и свой редактировал, проблема одна и та же...
Да, еще и папка в архиве, у тебя названа language, а в xml названа как languages.

Joomla 2.5.7, Virtuemart 2.0.10
 
вроде работает, но заголовки не выводит вообще, и не пойму как поправить
 
Отчитываюсь по хаку.

  • JInstaller: :Install: Файл не существует ********/tmp/languages/en-GB.plg_finder_virtuemart.ini
  • Установка плагина успешно завершена.

Joomla! 2.5.11 Stable
Virtuemart 2 - Установленная версия 2.0.20b
Исходный размер базы - 72,2 mb

Но все вроде установилось. Включил плагин, включил поиск.
Количество товаров на момент тестирования: 92739
Скорость индексации: около 1000 товаров в минуту (если точнее - 946).

Ровно 50 минут - уже проиндексировано 51%
Вылезла ошибка:

Произошла ошибка
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1 SQL=UPDATE `****_finder_taxonomy_map` SET `link_id`='47870',`node_id`='32' WHERE

Поменял в настройках индекса количество потоков с 50 на 300.
Проиндексировалось за 47 минут.

Вроде, работает. Еще буду дальше разбираться
Новый размер базы еще не смотрел - позже отпишусь.
 
Всё установил, всё сделал, в поиске проиндескировало, но результата не видно.
 
Создал плагин для индексации товаров VirtueMart 2.0.8 "умным поиском" Joomla 2.5.6. Помимо установки самого плагина потребуется также сделать легкий хак файла router.php компонента VirtueMart. Предлагаю скачать установочный файл плагина, а также доработанный файл router.php компонента com_virtuemart (см. прикрепленные к теме файлы: plg_finder_virtuemart.zip и router.zip). Краткую инструкцию по установке см.в прикрепленном файле: info.txt.

P.S.
Жду обратную связь от скачавших и установивших мой плагин. Работоспособность плагина не гарантирую, поскольку это новая, еще сырая разработка под связку J2.5.6+VM2.0.8.

Немного подумал и доработал с целью отказаться от хака.
просто перенес тело метода добавленного в router.php на место вызова метода. - вроде заработало. Только тоже при установке выдает " Файл не существует ********/tmp/languages/en-GB.plg_finder_virtuemart.ini" - так и не понял почему )))
 

Вложения

  • plg_finder_virtuemart.zip
    5,6 KB · Просмотры: 35
А для "тройки" никто не делал?
 
Назад
Сверху