Новости Joomla

Вышел плагин AllVideos v.7.0 от JoomlaWorks

Вышел плагин AllVideos v.7.0 от JoomlaWorks

Вышел плагин AllVideos v.7.0 от JoomlaWorks.Этот контент-плагин - одно из старейших расширений для Joomla. Его задача - преобразовывать шорт-коды вида

{YOUTUBE}...{/YOUTUBE},
{MP3}parth/to/file.mp3{/MP3} и подобные во встроенные видео или аудио.👩‍💻 v.7.0.0. Что нового?- Добавлена поддержка Youtube Shorts. Просто скопируйте полный url видео и вставьте его внутри тегов
{YOUTUBE}...{/YOUTUBE}.- Поддержка Joomla 5.x без плагина обратной совместимости. PHP 5, PHP 7, PHP 8. - Индексация умным поиском в CLI. В Joomla 5 плагин перестал вызывать ошибку при индексации контента умным поиском через CLI,Заметьте, что этот один и тот же пакет для всех версий Joomla, начиная с 1.5.x и заканчивая 5.x. Технически "под капотом" код плагина по сути не менялся, а для поддержки следующих версий Joomla авторы вставляют "заплатки". Плагин всё ещё использует старую архитектуру файлов и классов Joomla, что, к сожалению, заставляет прибавлять к его описанию слова "пока ещё" - "пока ещё работает".
Страница расширенияGitHub расширенияJoomla Extensions Directory👩‍💻 За ссылку спасибо самому внимательному участнику нашего сообщества - Ринату Кажетову (@rkazhet).@joomlafeed#joomla #расширения

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

shurakana

  • Давно я тут
  • 792
  • 50 / 6
AJAX поиск для сайта
« : 09.09.2014, 20:38:34 »
Всем привет! ;D
Сделал AJAX поиск со сменой раскладки клавиатуры, и вот, хочу поделиться!

Версия JoomShopping 4.6.0 - но в принципе должно работать и на других версиях. Пробуем - отписываемся..

Часть HTML и CSS и JS
В index.php шаблона в самый конец head вставляем:
Спойлер
[свернуть]

Дальше, в нужное место добавляем HTML
Спойлер
[свернуть]

Прописываем CSS стили и подправляем пути к картинкам, ну или вставляем свои..
Качаем картинки shurakana.myjino.ru/css/img/del_icn.png и shurakana.myjino.ru/css/img/aja_lo.gif
Спойлер
[свернуть]


Часть PHP
В папку \components\com_jshopping\controllers\ добавляем файл с названием poisk.php со следующим содержимым:
Спойлер
[свернуть]
Если кто то хочет выводить изображения, раскомментируте строки с img.
HTML с формой поиска можно вынести в отдельный модуль.

Вот в принципе и все. Жду мнений..))

Демо смотреть здесь http://shurakana.myjino.ru/shop/radar-detectory

Все изменения из обсуждения внесены в мануал!
Изменения не затрагивают "ядра" Joomla и JoomShopping можно спокойно обновляться.
« Последнее редактирование: 11.09.2014, 18:59:21 от shurakana »
Эта подпись отображается внизу каждого Моего сообщения. Я также могу использовать BB код и смайлы.
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: AJAX поиск для сайта
« Ответ #1 : 09.09.2014, 23:42:47 »
иначе примерно через полгодика-годик, здесь начнется нытье, что автор м***к

:) к бабке не ходи :)

В папку \components\com_jshopping\controllers\ добавляем файл с названием poisk.php со следующим содержимым:

не постиг мысль:
Цитировать
$lang->get('name')."` AS name ... AND `name_en-GB` LIKE
откуда взялось тут вдруг это? :)

в файл \components\com_jshopping\lib\functions.php
почему тут? почему не в том же контроллере? зачем ненужный хак?
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

shurakana

  • Давно я тут
  • 792
  • 50 / 6
Re: AJAX поиск для сайта
« Ответ #2 : 10.09.2014, 01:28:40 »
может не увидела...
Нет, все что было увидели, ничего не скрывал..)

не постиг мысль...откуда взялось тут вдруг это? :)
http://joomlaforum.ru/index.php/topic,298800.msg1483323.html#msg1483323 - я тонкости хорошо запоминаю..) Еще раз спасибо кстати..

почему тут? почему не в том же контроллере? зачем ненужный хак?
В той же теме ток ниже - "Теперь не получается вызвать функцию. Создал я компонент по всем канонам значит, а он мне пишет Call to undefined function translit();
Функцию translit создавал как и внутри функции okey так и снаружи, все равно Call to undefined."

Ну и я как понятливый человек сделал как УЖЕ ПОЛУЧАЛОСЬ.. ;)
« Последнее редактирование: 10.09.2014, 01:31:50 от shurakana »
Эта подпись отображается внизу каждого Моего сообщения. Я также могу использовать BB код и смайлы.
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: AJAX поиск для сайта
« Ответ #3 : 10.09.2014, 10:13:31 »
я тонкости хорошо запоминаю..

как то получается, что тонкости хорошо, а общее - плохо :) откуда взялось en-GB? что содержит $lang->get('name')? что получится с запросом, если $lang->get('name') = name_ru-RU ?

Call to undefined function translit()

видимо потому что в php, в отличии например от java, обращение к методам/свойствам класса из этого же класса осуществляется через self или $this, в зависимости от того, статический или не статический метод вызывается.
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

shurakana

  • Давно я тут
  • 792
  • 50 / 6
Re: AJAX поиск для сайта
« Ответ #4 : 10.09.2014, 16:34:28 »
$lang->get('name') содержит - name_en-GB..
У меня все таблицы на английском, я не добавлял язык для фронтенда, видимо поэтому. Поправил наверху.

Про self и this прочитал, сделано.
« Последнее редактирование: 10.09.2014, 17:41:25 от shurakana »
Эта подпись отображается внизу каждого Моего сообщения. Я также могу использовать BB код и смайлы.
*

shurakana

  • Давно я тут
  • 792
  • 50 / 6
Re: AJAX поиск для сайта
« Ответ #5 : 10.09.2014, 19:14:22 »
Кстати, после переноса функции "раскладки" в poisk.php можно спокойно обновляться..)
Но что делать с ошибкой 500 Internal Server Error?
Посмотрел возможные причины, не то..
Все проверил еще раз, даже поля в MySQL привел к одинаковому виду..
Это баг что ли какой то.. :(
Эта подпись отображается внизу каждого Моего сообщения. Я также могу использовать BB код и смайлы.
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: AJAX поиск для сайта
« Ответ #6 : 10.09.2014, 20:52:37 »
Так же необходимо проверить что у вас выдает echo $lang->get('name'); если name_ru-RU, то все в порядке, а если en-GB, то вам необходимо заменить язык в запросе SELECT.

т.е. вместо того, чтобы написать
Код
AND `".$lang->get('name')."` LIKE
мы все таки упорно пишем name_ru-RU, а потом мужественно преодолеваем эту проблему? :)

Но что делать с ошибкой 500 Internal Server Error?

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

shurakana

  • Давно я тут
  • 792
  • 50 / 6
Re: AJAX поиск для сайта
« Ответ #7 : 10.09.2014, 21:12:41 »
мы все таки упорно пишем name_ru-RU, а потом мужественно преодолеваем эту проблему? :)
Ахах, я термас..)

ошибку бы видеть...
При запросе "радар" выводит категорию "радар-детекторы", при "видео" выводит "видеорегистраторы", а вот при запросе "Электро", "электроника" и пр.. в консоли ошибка 500 Internal Server Error.. т.е. даже ничего не найдено не выводит, а просто ошибку..
Эта подпись отображается внизу каждого Моего сообщения. Я также могу использовать BB код и смайлы.
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: AJAX поиск для сайта
« Ответ #8 : 10.09.2014, 21:20:02 »
консоль с 500 Internal Server Error я видел. теперь бы ошибку :) видимо выключен показ ошибок.
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

shurakana

  • Давно я тут
  • 792
  • 50 / 6
Re: AJAX поиск для сайта
« Ответ #9 : 10.09.2014, 21:26:39 »
Ошибка в букве "Э"- когда вводишь "лектроника", "лектро" и пр. все работает..
пробовал и категорию назвать лэктроника проблема осталась..
Че за шутки?))

Ошибки включены, точку с запятой не поставишь выводит - "Parse error: syntax error, unexpected '}', expecting ',' or ';' in X:\home\localhost..." на сервере также..
« Последнее редактирование: 10.09.2014, 21:42:25 от shurakana »
Эта подпись отображается внизу каждого Моего сообщения. Я также могу использовать BB код и смайлы.
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: AJAX поиск для сайта
« Ответ #10 : 10.09.2014, 21:41:59 »
косая черта - необходимо экранирование. видимо с этим проблема.
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

shurakana

  • Давно я тут
  • 792
  • 50 / 6
Re: AJAX поиск для сайта
« Ответ #11 : 10.09.2014, 22:23:08 »
Ц, как их экранировать то... 100+ статей прочел про экранировку, везде одно и тоже...

Э, заработало, а ' не хочет работать, я уже и в двойные кавычки перевел, и слеш убрал, ну не хотят вместе работать, как только не пробовал.. Неужели отдельно делать?

Ну вот почему у меня каждый какашка нетонущая всплывает, а...
« Последнее редактирование: 10.09.2014, 22:31:04 от shurakana »
Эта подпись отображается внизу каждого Моего сообщения. Я также могу использовать BB код и смайлы.
*

shurakana

  • Давно я тут
  • 792
  • 50 / 6
Re: AJAX поиск для сайта
« Ответ #12 : 11.09.2014, 16:49:43 »
Дело оказывается не в функции '\''=>'э' и 'э'=>'\'', а вообще в самом коде экранировать надо...))
Я функцию раскладки удалил, проблема с ' осталась все равно. Как я психовал вчера..))

в SELECT'е надо было экранировать - вместо '%$search_cat_lay[0]%' так \"%$search_cat_lay[0]%\"

И еще один вопрос, как применить функцию фильтрации опасных символов? в Joomla ведь есть такая?
Эта подпись отображается внизу каждого Моего сообщения. Я также могу использовать BB код и смайлы.
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: AJAX поиск для сайта
« Ответ #13 : 11.09.2014, 17:00:15 »
что именно имеется в виду?
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

shurakana

  • Давно я тут
  • 792
  • 50 / 6
Re: AJAX поиск для сайта
« Ответ #14 : 11.09.2014, 17:05:30 »
что именно имеется в виду?
Защита от sql инъекций и пр..? Может еще какие то методы есть..

чтобы к $_POST['search'] применить..
« Последнее редактирование: 11.09.2014, 17:10:48 от shurakana »
Эта подпись отображается внизу каждого Моего сообщения. Я также могу использовать BB код и смайлы.
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: AJAX поиск для сайта
« Ответ #15 : 11.09.2014, 17:18:09 »
JFactory::getApplication()->input->get('search')
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

shurakana

  • Давно я тут
  • 792
  • 50 / 6
Re: AJAX поиск для сайта
« Ответ #16 : 11.09.2014, 17:49:26 »
Я так понял что в JFactory::getApplication()->input->get('search') содержится текст поиска, как его вывести то для проверки?
Получается что дальше везде в коде надо заменить $_POST['search'] на "чтото", так ведь?

Я думаю это типа $clean = mysql_real_escape_string($_POST['search']);

Ничего не нашел почитать, не пишут про это..

« Последнее редактирование: 11.09.2014, 17:52:47 от shurakana »
Эта подпись отображается внизу каждого Моего сообщения. Я также могу использовать BB код и смайлы.
*

shurakana

  • Давно я тут
  • 792
  • 50 / 6
Re: AJAX поиск для сайта
« Ответ #17 : 11.09.2014, 18:21:40 »
Так же хотел сделать транслит с русского на английский, типа чтобы искал например 'самсунг' = samsung, 'стингер' = stinger... Но слишком много моментов, типа "айфон" = aifon, придется делать исключение в коде "ай" = i, блю = "blue" и т.д.

Может есть готовые такие вещи, или может есть человек который на 1000% знает английский который может знать особенность таких моментов или еще что нить в это духе?

Т.е. в словах где используется ф как ph идут гласные, или i читается как ай в словах где следующая буква С, d.. что то типа..
Эта подпись отображается внизу каждого Моего сообщения. Я также могу использовать BB код и смайлы.
*

shurakana

  • Давно я тут
  • 792
  • 50 / 6
Re: AJAX поиск для сайта
« Ответ #18 : 11.09.2014, 18:57:46 »
Исправил url: "http://localhost/im/shop/poisk/okey" на url: "<?php echo JURI::base();?>shop/poisk/okey",

А echo SEFLink('index.php?option=com_jshopping&controller - не работает в index.php шаблона. И плюс если добавлен суффикс к url то уже работать не будет... Как то можно автоматизировать это дело?
Эта подпись отображается внизу каждого Моего сообщения. Я также могу использовать BB код и смайлы.
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: AJAX поиск для сайта
« Ответ #19 : 11.09.2014, 20:37:28 »
Получается что дальше везде в коде надо заменить $_POST['search'] на "чтото", так ведь?

я и написал, на что заменить

Т.е. в словах где используется ф как ph идут гласные, или i читается как ай в словах где следующая буква С, d.. что то типа..

думаю, это не поддается описанию математически, либо слишком сложно.

Исправил url: "http://localhost/im/shop/poisk/okey" на url: "<?php echo JURI::base();?>shop/poisk/okey",

что правда особо это ничего не поменяло в плане универсальности, потому что привязка к пункту меню shop у вас все равно осталась.

А echo SEFLink('index.php?option=com_jshopping&controller - не работает в index.php шаблона

SEFLink все равно где работать. Просто что в шаблоне файл, в котором она описана, еще видимо не подгружен
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

shurakana

  • Давно я тут
  • 792
  • 50 / 6
Re: AJAX поиск для сайта
« Ответ #20 : 18.09.2014, 17:26:41 »
я и написал, на что заменить
Спасибо, это получается каждый раз в 4-х местах "функция очистки" будет вызываться, или как? А нельзя 1 раз почистить и потом везде использовать? Как то так..

думаю, это не поддается описанию математически, либо слишком сложно.
^-^ ну я уж так, может есть какой нибудь тут физик ядерщик..))


SEFLink все равно где работать. Просто что в шаблоне файл, в котором она описана, еще видимо не подгружен

<?php print SEFLink('index.php?option=com_jshopping&controller=search&task=okey', 1);?> в index.php шаблона пишет ошибку Call to undefined function SEFLink();
Но так происходит только на главной, на странице shop уже работает..
Пытался вставлять всякие $jshopConfig = JSFactory::getConfig(); тоже самое, только JSFactory not found

Можно как то сделать чтобы на главной определялся компонент?
Эта подпись отображается внизу каждого Моего сообщения. Я также могу использовать BB код и смайлы.
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: AJAX поиск для сайта
« Ответ #21 : 18.09.2014, 19:34:58 »
А нельзя 1 раз почистить и потом везде использовать?

а что, переменные в php уже отменили? или сделать
Код: php
$search = JFactory::getApplication()->input->get('search');
а потом там где надо эту переменную $search использовать, какие то высшие силы мешают? :)

ну я уж так, может есть какой нибудь тут физик ядерщик..

ну может и есть...

Можно как то сделать чтобы на главной определялся компонент?

ну я ж говорю, надо подгрузить файл, в котором определены нужные функции. посмотрите как это сделано в модулях. ведь модули тоже могут быть выведены не на страницах компонента, так ведь? но тем не менее
Код: php
$jshopConfig = JSFactory::getConfig();
в них прекрасно работает. разберетесь, почему?  ;)
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

shurakana

  • Давно я тут
  • 792
  • 50 / 6
Re: AJAX поиск для сайта
« Ответ #22 : 18.09.2014, 20:41:20 »
а потом там где надо эту переменную $search использовать, какие то высшие силы мешают? :)
Воу, чет тупанул длина смутила наверн..))

разберетесь, почему?  ;)
Спасибо за наводку - require_once (JPATH_SITE.'/components/com_jshopping/lib/factory.php'); и seflink заработал...
Я конечно почитал что require_once 1 раз делает запрос.. Но, это на производительность никак не повлияет?)

Вот теперь я понял смысл слов:
Просто что в шаблоне файл, в котором она описана, еще видимо не подгружен..
;D
Эта подпись отображается внизу каждого Моего сообщения. Я также могу использовать BB код и смайлы.
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: AJAX поиск для сайта
« Ответ #23 : 18.09.2014, 21:34:35 »
Я конечно почитал что require_once 1 раз делает запрос.. Но, это на производительность никак не повлияет?)

ну во-первых, а варианты? а во-вторых, можно проверить: включить профайлер в Joomla и посмотреть расход памяти без require и с ним, а также вывести microtime(true) до и после require и посмотреть время выполнения этой команды.
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

shurakana

  • Давно я тут
  • 792
  • 50 / 6
Re: AJAX поиск для сайта
« Ответ #24 : 18.09.2014, 21:44:00 »
ну во-первых, а варианты?

Я уже проверил, что при удалении в модуле, модуль продолжает работать... ;D
т.е. подключаем 1, отключаем несколько других..)))
Эта подпись отображается внизу каждого Моего сообщения. Я также могу использовать BB код и смайлы.
*

shurakana

  • Давно я тут
  • 792
  • 50 / 6
Re: AJAX поиск для сайта
« Ответ #25 : 23.09.2014, 11:15:36 »
Тут такая мысль пришла, на счет безопасности. По идее вообще любой input надо же защищать и chekbox и radio и т.д.? Т.е. любая информация которая отсылается на сервер должна фильтроваться, так ведь?
Эта подпись отображается внизу каждого Моего сообщения. Я также могу использовать BB код и смайлы.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Мы починили поиск для JoomShopping

Автор Dimidrol-Pruper

Ответов: 101
Просмотров: 33608
Последний ответ 24.06.2024, 14:20:58
от kit2m2
Поиск заказа по номеру телефона клиента

Автор Shiffer

Ответов: 19
Просмотров: 3134
Последний ответ 07.12.2021, 19:43:38
от anatol81n
Поиск в заказах по полю комментарий? Реализация?

Автор aLLex177

Ответов: 15
Просмотров: 1749
Последний ответ 16.02.2021, 13:57:58
от dss
AJAX пагинация товара

Автор ExJTMaster

Ответов: 10
Просмотров: 3861
Последний ответ 12.10.2020, 16:20:18
от sivers
Усовершенствованый фильтр 3.4.0(ajax)

Автор seetvael

Ответов: 252
Просмотров: 42798
Последний ответ 06.08.2020, 14:57:19
от goga_pgasovav