Change record status: 
Project: 
Introduced in branch: 
8.x
Introduced in version: 
8.x
Description: 

There were several changes between Drupal 7 and Drupal 8 in how the Core search works, from a site visitor perspective. These may affect module developers and themers.

a) The URL for searching when you submit keywords changed from:

example.com/(page url)/(keywords)?(additional query params)
to
example.com/(page url)?keys=(keywords)&(additional query params)

Here, (page url) is something like "search/node" or "search/user" (the URL for each search page is defined by the admin when setting up search pages, but it always starts with "search/").

This is more in line with standard industry practice for web searches.

b) Node advanced search filters are now implemented via query string ?f[]= parameters instead of being embedded into the search keyword string.

c) The form element in the Search block form where you type in your keywords is changed from having its HTML 'name' attribute being 'search_block_form' to being 'keys'. This is the same now as the 'name' for the keywords form element on the search form that is embedded into the search page.

d) The search block form submits directly to the default search page with GET instead of using a redirect in the submit method (so its 'action' and 'method' attributes changed).

See also: https://drupal.org/node/2083471 (change notice about massive changes in the Search API).

Impacts: 
Site builders, administrators, editors
Module developers
Themers