Making ecto work with Runcms/E-Xoops

Last week I spend some time helping a customer with her Mac version of ecto. The customer in question wanted ecto to work with Runcms, a content-management system not very unlike Drupal. The problem was that Runcms has an XML-RPC implementation that doesn't follow specifications and had some odd bugs. First, I made a few changes in ecto to be more happy when an XML-RPC implementation is sending integers instead of strings (available as latest build). Then, I had to patch up Runcms' implementation of the Blogger API. I already made one concession a while ago, passing titles as embedded tags in the main body to Blogger API-only weblogs (LiveJournal, for example). But Runcms also uses embedded “hometext” and “moretext” tags. This is where I drew my line, it shouldn't get more crazy than that. However, if ecto only provides an embedded title tag with the rest of the body, the whole contents would be used as the main text of the entry. In addition, it was impossible to post entries to a blog that has an ID of 0 as it would trigger an error message.

If you use Runcms and you want to have ecto support, please install the patch I wrote. Download and unpack runcms-patch.zip. There are three files which have to be installed in designated locations of your Runcms installation directory (overwriting the existing ones, but make sure to back up those original files):

rpc_functions.php goes in modules/phpRPC/include/
editPost.php goes in modules/phpRPC/library/exoops/blogger/
newPost.php goes in modules/phpRPC/library/exoops/blogger/

Then, in ecto you can set up an account for your Runcms blogs, using Blogger as the API and something like http://YOURSITE.COM/PATH-TO/runcms/modules/phpRPC/server.php as the access point.

Posted by Adriaan on March 15, 2005