Если я правильно думаю, когда вы перенаправите это;
?s=hello+world
к этому;
/search/hello-world.html
WordPress на самом деле будет искать «hello-world.html», и я сомневаюсь, что вы получите какие-либо результаты (предположим, что «hello + world», где плюс - это URL, декодированный в фактическое «пробел», действительно возвращает результаты) ).
Таким образом, вам также нужно подключиться к WordPress до того, как он выполнит поиск, чтобы вернуть поисковый запрос в прежнее состояние.
Плюс, кажется, боль в замене символов в Apache: - вам нужно написать правило для каждого числа «плюс».
На вашем месте я бы все делал внутри самого WordPress, используя PHP. Я мог бы опубликовать решение, если вам нравится этот звук?