Новости Joomla

WT YOOtheme Yandex Map v.1.2.0. Плагин для Joomla

👩‍💻 WT YOOtheme Yandex Map v.1.2.0. Плагин для Joomla.Плагин добавляет элемент Яндекс Карт для конструктора страниц YOOtheme в Joomla. Гибкие настройки отображения маркеров, всплывающих окон и их содержимого, кластеризация маркеров.👩‍💻 v.1.2.0. Что нового?- Исправление отображения иконок и всплывающих окон маркеров. - Теперь на мобильных устройствах перетаскивание карты работает только с помощью двух пальцев- Новые элементы управления картой:- - Открыть карту в полноэкранном режиме- - Линейка и планиметр- - Определить моё местоположение- - Управление поворотом и наклоном карты- - Поиск по карте- Новые режимы центрирования карты:- - Режим Координаты. Используются значения полей Широта и Долгота- - Режим На крайнем маркере. Используются координаты крайнего установленного на карте маркера- - Режим Вмещать все маркеры. Карта позиционируется и масштабируется для отображения всех установленных маркеров на карте- Теперь расположение элементов управления картой можно настроить- Добавлена возможность выбрать цвет маркера- Карта перемещается к маркеру при открытии всплывающего окна- Добавлена возможность скрыть всплывающее окно- Настраиваемая позиция всплывающего окна относительно маркера. Допустимые значения - сверху, слева и справа от маркера- Улучшено указание координат с помощью мини-карты в настройках маркера. Теперь в окне настроек элемента карты при перетаскивании маркера карта следует за ним- Добавлены параметры смещения по осям X и Y для иконок маркеров и кластерови другое.Системные требования.Минимальная версия Joomla - 4.2, PHP - 8.0.Версия расширения 1.2.0 протестирована на Joomla 6.0-beta3.👩‍💻 Релиз выпущен усердиями участника нашего сообщества Андрея Смирникова (@tg_andrey).Страница расширенияGitHub расширения@joomlafeed#joomla #расширения #яндекс #yootheme #yandex #яндекскарты

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

westward

  • Осваиваюсь на форуме
  • 11
  • 4 / 0
Здравствуйте!

Выяснилось, что стандартный компонент поиска с включенным SEO, если слово или фраза содержат заглавную русскую "Р", работает неправильно. Из-за скромных познаний в теме пришлось долго и много копать - вначале стандартный плагин content - search, затем стандартный компонент поиска. Искал я место в программном коде, которое в строке utf-8 с кодами русской Р меняет D0 A0 на D0 20.
Докопался до нужного на мой взгляд места. В контроллере компонента com_search, функция search(), последняя строка кода - вызывается метод JRoute::_(). И вот в нем-то строка с заглавной Р и портится.

Файл \libraries\joomla\methods.php - реализация класса JRoute и метода JROUTE::_()

                // Replace spaces
                $url = preg_replace('/\s/', '%20', $url);

Переменная $url соответственно на входе и на выходе этой функции:
/component/search/КОРБАН.html?ordering=&searchphrase=all
/component/search/КО�%20БАН.html?ordering=&searchphrase=all

Насколько я понимаю, этот вызов preg_replace должен заменить любой пробельный символ на последовательность %20. Но почему заглавная русская Р засчитана как пробельный символ?

С уважением
*

smart

  • Администратор
  • 6478
  • 1318 / 15
  • Хочешь сделать хорошо — сделай!
Re: preg_replace() и заглавная русская Р
« Ответ #1 : 14.01.2009, 19:42:45 »
Я бы заменил строчку:

Код: php
$url = preg_replace('/\s/', '%20', $url);

на

Код: php
$url = preg_replace('/\s/u', '%20', $url);
*

westward

  • Осваиваюсь на форуме
  • 11
  • 4 / 0
Re: preg_replace() и заглавная русская Р
« Ответ #2 : 14.01.2009, 23:02:58 »
Да, так все работает верно. Спасибо огромное за ответ!

Есть на форуме место, куда стоило бы написать заметку? Или кому надо, сам найдет?

С уважением
*

smart

  • Администратор
  • 6478
  • 1318 / 15
  • Хочешь сделать хорошо — сделай!
Re: preg_replace() и заглавная русская Р
« Ответ #3 : 15.01.2009, 10:23:51 »
Мы добавим эту информацию в Joomla FAQ, и, конечно, я добавил описание этой ошибки и ее решения в bug-tracker Joomla, будем надеяться, что в следующей версии это будет уже исправлено.
*

westward

  • Осваиваюсь на форуме
  • 11
  • 4 / 0
Re: preg_replace() и заглавная русская Р
« Ответ #4 : 16.01.2009, 13:59:27 »
Для корректной работы стандартного компонента поиска Joomla нужно внести еще одно исправление.

Файл \components\com_search\views\search\view.html.php. Строка примерно 129-я.

Было так:
Код
{
  $searchwords = preg_split("/\s+/", $searchword);

А надо так:
Код
{
  $searchwords = preg_split("/\s+/u", $searchword);

Пропущен все тот же модификатор utf-8 в регулярном выражении.
*

smart

  • Администратор
  • 6478
  • 1318 / 15
  • Хочешь сделать хорошо — сделай!
Re: preg_replace() и заглавная русская Р
« Ответ #5 : 18.01.2009, 14:48:58 »
Ага, спасибо. Добавил и это исправление в баг-трекер Joomla 1.5. Будем надеяться оба пожелания учтут в следующей версии (по идее и в 1.6 это тоже должно включиться).
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться