views_autocomplete_api-8.x-1.x-dev/modules/views_autocomplete_api_demo/views_autocomplete_api_demo.module
modules/views_autocomplete_api_demo/views_autocomplete_api_demo.module
<?php
/**
* @file
* Contain the module of views autocomplete API demo.
*/
use Drupal\Core\Form\FormStateInterface;
/**
* Implements hook_form_FORM_ID_alter().
*/
function views_autocomplete_api_demo_form_search_block_form_alter(&$form, FormStateInterface $form_state) {
// Search on multiple views.
$view_name = 'search_auto_publish,search_auto_unpublish';
// You can omit display just put empty value with comma separator.
$display_id = ',block_1';
// @todo needs reviews
// $views_arguments='args1+arg2,arg3';
// Change the type of search field to textfield to enable autocompletion.
$form['keys']['#type'] = 'textfield';
// The autocomplete route name must be usually views_autocomplete_api.
$form['keys']['#autocomplete_route_name'] = 'views_autocomplete_api';
// The parameters must be passed ou #autocomplete_route_parameters with a
// valid view's machine name.
$form['keys']['#autocomplete_route_parameters'] = [
'view_name' => $view_name,
'display_id' => $display_id,
];
}
