I have a solution I tested, and it works.
The autocomplete for the tags is currently done via an ajax request to the file admin-ajax.php.
The solution I would suggest is to block the processing of the request so that it does not return any result. I would do :
function no_tag_suggest() {
if( DOING_AJAX == true && $_GET['action'] == 'ajax-tag-search' && $_SERVER['HTTP_REFERER'] == admin_url( 'edit.php' ) ) {
die;
}
}
add_action('admin_init', 'no_tag_suggest');
The previous function verify:
- if it is an ajax request
- if the action paramater is
‘ajax-tag-search’ - if the referer url is the
‘/wp-admin/edit.php’ page
If these 3 conditions are meet, no result will be returned and the tag suggestions not displayed.
If you want to remove this autocomplete from all the pages, not the ‘wp-admin/edit.php’ only, you can do:
function no_tag_suggest() {
if( DOING_AJAX == true && $_GET['action'] == 'ajax-tag-search' ) ) {
die;
}
}
add_action('admin_init', 'no_tag_suggest');
I would suggest you to look at the code of ‘admin-ajax.php’ to see all the ‘action’ parameters there, thus all the ajax requests you can kill with similar methods.
I hope my explanation was clear. Don’t hesitate to ask me if you want more details or have any question.
Bounty for me? 🙂