Modx SimpleSearch: кириллица не найдена

Описание проблемы:
На Revo есть сайт 2.4.2. Бабель Установлен в трех контекстах (Ru, Ua, En). Установлен SimpleSearch 1.9.2. Проблема заключается в невозможности поиска кириллического слова (ничего не найдено). Латинский поиск правильный. Везде установлен UTF-8.

Ожидаемый результат:
Начните поиск русских символов.

  • MODX версия: 2.4.2
  • Версия PHP: 5.4.45
  • Версия базы данных: 5.5.46
  • Установленные дополнения MODX: Ace, Archivist, Articles, Babel,
    BreadCrumb, менеджер часто задаваемых вопросов, загрузка файлов, getPage, getResources,
    GoogleSiteMap, MetaX, modxtalks, phpThumbOf, Quip, SimpleSearch,
    taglister, TinyMCE, транслит
  • Содержание журнала ошибок: ничего.

Форма:

[[!SimpleSearchForm? &method=`GET` &landing=`[[++searchlid]]` &tpl=`lisearch` &searchIndex=`query`]]

searchlid — разные для каждого контекста.

lisearch:

<form class="search" action="[[~[[+landing:default=`[[*id]]`]]]]" method="[[+method:default=`get`]]">
<input type="text" placeholder="[[%babel.placeholder_[[++cultureKey]]]]" name="[[+searchIndex]]" id="[[+searchIndex]]"/>
<input type="submit" id="search_btn" value=""/>
<input type="hidden" name="id" value="[[+landing:default=[[*id]]]]" />
</form>

mysql> показывать переменные типа ‘char%’;

+--------------------------+----------------------------+
| Variable_name            | Value                      |
+--------------------------+----------------------------+
| character_set_client     | utf8                       |
| character_set_connection | utf8                       |
| character_set_database   | utf8                       |
| character_set_filesystem | binary                     |
| character_set_results    | utf8                       |
| character_set_server     | utf8                       |
| character_set_system     | utf8                       |
| character_sets_dir       | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.03 sec)

mysql> показать переменные типа ‘collation%’;

+----------------------+-----------------+
| Variable_name        | Value           |
+----------------------+-----------------+
| collation_connection | utf8_general_ci |
| collation_database   | utf8_unicode_ci |
| collation_server     | utf8_unicode_ci |
+----------------------+-----------------+
3 rows in set (0.00 sec)

В шаблоне:

<meta charset="utf-8"/>
<meta http-equiv="content-language" content="ru" />
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />

В чем может быть проблема?

Заранее спасибо.

0

Решение

Не могли бы вы найти таблицу базы данных и сопоставления полей? Они должны использовать все UTF8 и utf_general_ci или utf8_unicode_ci.

Другая проблема может быть вызвана символами UTF-8, закодированными как html-объекты в полях расширенного текста. Возможно, эти объекты не найдены, потому что выполняется только необработанный поиск (я не знаю, как простой поиск подготавливает поиск).

Третья проблема может быть вызвана неправильной кодировкой HTML в шаблоне. Это приведет к неправильным символам в размещенной строке поиска.

1

Другие решения

Удивительно, но проблема была решена удалением из параметров сниппета. Я не знаю, с чем это связано.

Рабочая версия:

[[!SimpleSearchForm? &landing=`[[++searchlid]]` &tpl=`lisearch`]]

и просто

[[!SimpleSearch]]

на странице Landind.

0

По вопросам рекламы [email protected]