CrossBlog on Movable Type 3.2

From CICSWiki

Jump to: navigation, search

If you want to post an entry from one Movable Type blog to another - it is like posting on two blogs in one shot - even if they are on two different servers, use the CrossBlog plugin.

Note: MT = Movable Type

Nevertheless, the author of CrossBlog warns you about some potential incompatibility issues with later versions of MT such as 3.2: NOTE: This plugin has not been tested with MT3. Since I moved off Movable Type a couple of years ago, I'm no longer familiar enough with it to offer support if you run into problems with the plugin. Sorry, but if it doesn't work, I can't help you.

To save you part of the trouble, here are some necessary tweaks to make CrossBlog successfully work on MT 3.2. Tested from a blog on a personal MT server, where CrossBlog is installed and used to post on another blog on the cicsworld.org MT server. Follow these steps on the MT server where the post is originating from (it can be the same as the server for the target blog):

  1. Install the HighWater plugin as stronly recommended by the author of CrossBlog (download, unzip, copy the .pl file in the MT plugins directory).
  2. Install CrossBlog (download, unzip, copy the .pl file in the MT plugins directory).
  3. CrossBlog misses several Perl modules/functions in MT3.2 that you need to provide. This may not be the minimal list of additional Perl modules that CrossBlog requires in a MT default installation, but the plugin was tested to work after installing (or updating) all of these: Net::Blogger, Class::ErrorHandler, Class::Accessor, XML::SAX::Base (1.0.2), XML::RAI, XML::RSS::Parser, XML::Elemental, XML::SAX. The modules can be found on the CPAN. Then, the installation mostly consists to copy the content of the lib directory in the module files to the MT extlib directory and other eventual .pl/.pm files. This operation can be painful. So here is a more friendly alternative: download an extlib directory that contains the extra files already from http://cdangerville.iweb.bsu.edu/movabletype/mt-extlib.zip. Copy the content to your extlib directory and overwrite all.
  4. Add similar lines to the Main Index template of the blog you are cross-posting from, inside the MTEntries element (just after the <MTEntries> tag for example):
    <MTIfNewHighWater>
      <MTCrossBlog blogid='7' username='myusername' password='myapipassword'
                   proxy='http://www.cicsworld.org/cgi-bin/mt-xmlrpc.cgi'
                   title="<$MTEntryTitle$> [CrossBlog]">
        <B><a href="<$MTEntryPermalink$>"><$MTEntryTitle$></A></B>: <MTEntryExcerpt>
      </MTCrossBlog>
    </MTIfNewHighWater>
     
    In this example, replace the value 7 of the blogid with whatever is the ID of the blog you are cross-posting to. You may have to ask the server administrator, in particular someone who has access to the database used by MT. The blog ID is given by the blog table. Then, myusername is your username on that blog, myapipassword your API password on that blog, which is different from the password used to log in. This password is not set by default so please do so in your profile settings on the target blog. For information, it says For use with XML-RPC and Atom-enabled clients under the API password text box. The proxy link is the one of the target MT server XML-RPC script. Then an example of title that includes the original title. Last, the content of the other blog in this case will consist of a link back to the original blog with the title as text and the excerpt if any.
  5. Save and rebuild the template.

--Cyril Dangerville 02:26, 20 June 2006 (EDT)

Personal tools