Достаточно часто, пользователи WordPress могут сталкиваться с различными ошибками, связанными с протоколом xmlrpc. Так например, частая ошибка – это
Недействительный ответ сервера - Ответ методу blogger.getUsersBlogs, полученный с сервера блога, недействителен.
Invalid response document returned from XmlRpc server
Она возникает когда пользователь пытается подключиться к блогу через протокол xmlrpc с помощью блог клиента.
Причин для этой ошибки может быть несколько:
- некорректно написанные плагины
- ошибки в файлах темы
- запрет сервером на доступ к файлу xmlrpc.php
- кодировка файлов сайта
Это только несколько явно выявленные причины для недействительного ответа сервера.
Решение проблемы с XMLRPC
Чаще всего проблема кроется в плагинах и темах. Это могут быть пустые строки в php файлах перед “<?” и после “?>”. Попробуйте отключить все плагины и подключиться к блогу с помощью блог клиента, если подключение удалось, значит проблема в плагинах.
Например, в плагине “Top Level Categories” в конце php файла присутствуют две пустые строки, которые вызывают ошибку xml, поэтому перестают работать RSS и XMLRPC. Нужно с помощью текстового редактора удалить две пустые строки и сохранить файл.
Также в файлах темы, чаще всего в файле functions.php, может встречаться подобная проблема. Попробуйте переименовать этот файл и подключиться к блогу через XMLRPC, если подключение удалось, значит проблема именно в этом файле.
Также возможно проблема в кодировке файлов, отвечающих за RSS и XMLRPC. С помощью текстового редактора измените кодировку файлов на UTF-8 без BOM.
Некоторые серверы ставят запрет на доступ к файлу XMLRPC, например хостинговая компания Sweb. Решение этой проблемы я уже описал в статье “Удаленная публикация не работает на Sweb по умолчанию”