[wp-meta] [Making WordPress.org] #2416: Plugin Search Should Autocorrect when few results
Making WordPress.org
noreply at wordpress.org
Fri Jan 20 22:00:48 UTC 2017
#2416: Plugin Search Should Autocorrect when few results
------------------------------+------------------------------------------
Reporter: gibrown | Owner:
Type: enhancement | Status: new
Priority: normal | Milestone: Plugin Directory v3 - Future
Component: Plugin Directory | Keywords: ux-feedback needs-patch
------------------------------+------------------------------------------
Although the work in #1692 has improved search results for most queries,
it does not do well when the user makes a mistake or if the user is
looking for something that simply does not exist.
Based on evaluations of queries from logs I see:
- top 1000 queries have 4.2% of all queries getting zero results
- random 1k queries from the top 100k: 5% getting no results
- random 1k queries from the bottom 400k: 32% getting no results
Based on the [https://make.wordpress.org/meta/2016/08/30/initial-analysis-
of-plugin-search-logs/ previous analysis] of these queries I estimate that
overall '''18%''' of all queries will get no results. Also, '''35-40%'''
of all queries will get less than 5 results.
Based on those numbers, implementing some sort of "Did You Mean" UI when
there are less than 5 results seems like it would improve the user
experience.
I think there are four cases to consider given that a user searches for
"abc" and our suggester suggests "XYZ":
1. Zero results: Show a "No results message". Then show results for "XYZ"
(hopefully it will have results)
2. <5 results: Show the 1-4 results for "abc" and after those results show
the results for "XYZ". Link to "XYZ" and "XYZ" paging.
3. >= 5 results and we got a suggestion. Show the results we got, but
provide a link to go to "XYZ" results.
4. >= 5 results and no suggestions. Show results for "abc" as we currently
are.
We could use some mockups of what this should look like.
Based on looking at failing queries I see a number of patterns:
- Lots of misspellings or slight typos. We should try and detect them and
correct them
- Lots of cases where the user is searching for a particular plugin that
is not in the repo
- Lots of cases where adding a space within a term would allow the query
to match something
- "woo commerce" no longer matches. Indicative of lots of potential cases
where a misspelling prevents the user from finding what they are looking
for.
I've only briefly experimented with implementing the suggestions by using
the Elasticsearch term suggester like so:
{{{
"suggest" : {
"text" : "week calemdar",
"term" : {
"phrase" : {
"field" : "content_en",
"size" : 1
}
}
}
}}}
Gives results of:
{{{
"suggest": {
"term": [
{
"text": "week calemdar",
"offset": 0,
"length": 13,
"options": [
{
"text": "week calendar",
"score": 0.0005956095
}
]
}
]
}
}}}
A lot more testing of the backend is needed, and there are other methods
for creating ES suggestions that we have not experimented with yet.
--
Ticket URL: <https://meta.trac.wordpress.org/ticket/2416>
Making WordPress.org <https://meta.trac.wordpress.org/>
Making WordPress.org
More information about the wp-meta
mailing list