дело не в медленных запросах, может быть, а в большом количестве быстрых?☝
таблицы обычно вылетают из-за большого количества обращений к ним.
посмотрите Ваши настройки query_cache_size, query_cache_limit.
window.history.pushState( null, null, 'hello' );
но в истории останутся обе страницы - и с реальным адресом, и с новым:)
Делаем if по регулярному выражению
нельзя так, это всего лишь базовый путь для ссылок
На PHP определять http_user_agent и не давать Android качать.
☝согласен, только нужно проверить это хотя бы в яндексе и google.
Почему нельзя просто все url сделать вида site.ru/id5544 ??
Подменять можно javascript'ом. Так делают на ajax-сайтах.
я думаю, что эта проблема решается htaccess'ом, без всяких модулей.
и так тоже не ясно, что за post_type
Это делается на curl с сохранением кук (иначе капча не сработает). Открываем страницу с формой, считываем капчу. Потом все вместе отправляем с помощью curl методом POST.