It is going to be a quick a small article, just to share about a tiny but prickly problem which I believe a lot of bloggers have encountered in their career, especially when they use a third-party blogging software to publish articles.
Okay…so the thing is, I wrote an new article recently and I wanted to publish it to my Chinese version blog, and as usual, I use Ulysses to type. Obviously, Ulysses just got a nice update with the feature of publishing to WordPress is supported now. Therefore, I said to myself, why not try it out this time, since I have already set up my custom blog account in it.
But it just wouldn’t make it. It kept giving me an error saying I input an invalid url. WHAT? “Man, I just got it right last time and what on earth is happening? You are ruining my mood to write!” After some initial search on Google, I still can’t figure out the problem, so I went to bed with the absolute confidence to resolve it tomorrow.
Now is the “tomorrow”, and I solved it, thanks to all kinds of search engines online, and my problem solver characteristic! At first, I was able to locate this problem to the file called “xmlrpc.php” because I realized I also have problem with the Jetpack plugin on WordPress, it shows “site inaccessible” all the time. The tricky thing is, a lot of related pages says if you can get a sentence like “xmlrpc.php only accepts POST and so on…”, you are all good with this file.
Dudes, it is NOT! I typed into the url like “www.suguswu.com/xmlrpc.php” and I can get the right thing, so I was seriously misdirected by some pages at first, only trying methods su ch as to set up a “.htaccess” file because I don’t have it even I selected to show hidden files. On Ulysses, and perhaps Byword, too, the error window gave me approximately zero helpful messages, and they have slowed down my pace quite a lot. Thankfully, I have another writing software called MWeb, and when I use it to validate my setting, it told me the error message like this:
This is the right thing to do, and it came from a Chinese developer, a fact of which I was proud of. Based on the error message, it did tell me that the app can’t connect to the server, which is exactly what Ulysses and Byword are telling me. However, in the following messages, I found out it is still connected to the “xmlrpc.php” file, so the truth is, as long as you are using WordPress API, you are dealing with this file, no matter what error messages the apps are telling you. It is not the fault of code, nor the fault of WordPress, but the fault of the server providers, because they are blocking the request to “xmlrpc.php” file since it is an easy channel for attackers.
First things first…the solution I use to solve this problem is one I found by Twitter. It is the right way to do it and I’ve tried ignoring on purpose one of the steps would make it fail entirely. It simply integrates two famous solutions found online together, by adding code to the “.htaccess” file (if not exists, create one) and modifying the name of “xmlrpc.php” file. This is the best article that has illustrates why you can’t access to the file and how the solution works around to achieve it. The link is here.
But for me, there’s another thing to specify until I can make it work. For WordPress API, after making changes according to the method, it still fails so Ulysses and Byword are not my lifesavers, because it seems like they can only use WordPress API. Luckily, I have MWeb which can use Metaweblog API and this is the final step I did to make it back to be functional!
Note: Be sure to change “https” to “http”
For WordPress API, the interface looks like this in MWeb(which is similar to the interface in Ulysses and Byord and it is also why I suspect that the two would not be able to use this method.)
Alright, bloggers, back to work!