Elasticsearch e-commerce: specify first docs (products) for specific keywords

What is the best way to weight or boost specific documents (in this case my documents are products) so that they appear first for specific keyword searches?

In other words:

if
search term is "widget doodad"
then always show these items first:
"widget doodad #43"
"special widget doodad"
"our private-labeled widget doodad"

I have created a pretty good query for all-around use, but client wants to be able to "force" specific products to show first for a set of his top entered search terms.

I know this is something that relevancy experts bristle at, but hey, this is business! :wink:

Have a look at my conditional boost plugin, maybe you can grasp some ideas

Thanks Jorg, I'll check it out!

Jorg - I want to give this a try but the url to your plugin gives a 404:

http://xbib.org/repository/org/xbib/elasticsearch/plugin/elasticsearch-condboost/2.3.3.1/elasticsearch-condboost-2.3.3.1-plugin.zip

Sorry, the correct URL is

http://xbib.org/repository/org/xbib/elasticsearch/plugin/elasticsearch-functionscore-conditionalboost/2.3.3.1/elasticsearch-functionscore-conditionalboost-2.3.3.1-plugin.zip