最近、ElasticPress for WooCommerceが統合され、(フィルタを使用して)コードの改良が加えられましたが、ElasticSearch APIの制限と思われるいくつかのヒットがありました。注文を検索するときに弾性検索エンジンに送信されたクエリに改造を加え、検索用語が部分検索として機能するようにしました(SQLのLIKEステートメントと同じように)。AWSのElasticSearchワイルドカードクエリとスペースに関する問題
スペースや@記号のような特殊な記号がクエリにある場合を除いて、正常に動作します。私はこれが特殊文字をエスケープすることによって避けることができることを読んだが、私はそれもやって運がなかった。
私はワイルドカードクエリを使用していますが、私はエスケープされたバージョンでreplacnigスペースを試しましたか?トークン(任意の1文字と一致する必要があります)。そしてそれにも運がない。
このクエリは動作します。これにはない
"query": {
"wildcard": {
"meta._billing_full_name.value": "*kumar*"
}
}
"query": {
"wildcard": {
"meta._billing_full_name.value": "*manish*"
}
}
は、これはあまりにも行います。
"query": {
"wildcard": {
"meta._billing_full_name.value": "*manish k*"
}
}
ところで、私たちはAとしてAWS ElasticSearchサービスを使用していますサービスプロバイダ。彼らはElasticSearchの古いバージョン(私が知る限り1.5.3)を使用していますが、それが問題の原因の1つであるかどうかはわかりません。
おかげ
'meta._billing_full_name.value'のマッピングは何ですか?それは '分析された文字列'ですか? – Richa
@リチャ私はよく分かりません。私はプラグインをインストールし、ElasticPressを使用してサイトを索引付けしました。私はそれが特別なものを生成しないと思う。どのようにその小道具のマッピングがチェックされるべきですか? –
'curl -XGET 'を使用しますhttp:// serverIp:9200/index_name/_mapping /' ' – Richa