Make Mambo and WordPress Work Together

After having migrated my website to the Mambo content management system, I gradually realized its limitations when it comes to blogging. According to many posts I’ve read on the Internet, Mambo is not a blogging platform. Hence caution for those who need blogging as a main functionality of their website. My solution to this problem was to use both Mambo and WordPress. After tweaking around with the WordPress template for a couple of hours, I was able to match its look and feel with my website. You can click on the main menu links in the left panel to see the look and feel of the Mambo part of this website. I did this integration by (1) sharing the same CSS file to ensure look consistency; (2) borrow Mambo’s index.php file and modify it by taking out Mambo modules and adding in WordPress commands.

I suppose after all this work, I am sort of back to where I first started, with my website on one system and my blog on another. But it’s nice to have the two integrated on the same server. One complaint I do have about Mambo though is its search-engine and human-unfriendly URLs. I am looking for add-ons that may solve this problem.

Migrating to the Mambo Content Management System

I spent the last few days migrating my old website to the Mambo content management system (CMS). My decision to move to a CMS structure was driven by the fact that it will allow easier updating of my website contents, since I often needed to list a new publication or add a new working paper. I also wanted to integrate my blog (currently on WordPress) into my own website. After spending more than 40 hours, my new website is starting to take shape. The short-term investment of time into the transition proved to be much more than I had initially expected. However, I can also see hours of time saved in the future because of this transition. Here I would like to discuss my experiences and a few things that I learned along the way.

Installation: Installation of Mambo was a really easy step. Rather than downloading and unzipping the package and then trying to ftp everything to the server, I found it’s much easier to do the downloading and installation remotely. You will need to be able to Telnet into your host server. Once there, go to the directory that you would like to install Mambo in. Then issue a command “wget http://internap.dl.sourceforge.net/sourceforge/mambo/MamboV4.6.2.tar.gz”, which will download the installation file onto your server. As the software gets updated in the future, you will need to change the link accordingly. Once the file is successfully downloaded, issue another command “tar -xzvf MamboV4.6.2.tar.gz”. (Again, you will need to change the file name if you are installing a different version of Mambo.) This will unpack the files onto your server. The rest of the installation process can be done easily through a browser, which is described in the Mambo’s installation guide.

Look and Feel: The original Mambo package contains a few reasonable templates. You can also download additional Mambo templates for free. If a preset template is all you need, you can handle the look and feel part very easily, which is a real virtue of the system. For me, since I had much more specific ideas of how I want my website to look like, it took me a little while trying to tweak the CSS file.

Architecture: This is the part that took a lot of my time. I wanted to design an architecture that is user-friendly and at the same time will allow me to update the site easily in the future. Being unfamiliar with a CMS style of thinking, I had to spend quite some time figuring out how to separate a page of stuff into content items and then how to assemble the items back into a seamless page. So I would recommend anyone who is about to go through this same transition to plan out the architecture ahead of time and to read more about CMS before starting. Mambo Administrator Manual would be a good starting point.

Adding Contents: Once a proper architecture is set up, adding contents is very easy, involving mostly repetitive copying and pasting work. One thing to keep in mind is that Mambo requires all dynamic contents to belong to a category within each section, but the administrator interface does not allow on-demand creation of a new category or section within the content creation page. Therefore, I would recommend opening the administrator interface in three separate windows, using one for actual content writing, one for section manager, and the third one for category manager. Alternatively, you can also plan out all your categories and sections ahead of time and add them all at once to avoid switching back and forth.

Menu Items: This should have already been figured out in the architecture design stage. The most difficult part of this step is to understand the terms Mambo uses for different types of menu items, with each type creating a different type of page when it is clicked on. I found it helpful to simply add the different types of menu items into the menu bar to see how each one behaves. It helped me determine which type suited my needs the best.

Blog and RSS: Setting up the blog page is very easy and is not too different from setting up the other pages. The only problem that I encountered and which I have not been able to find a solution for is to have a RSS feed only for blog entries. Mambo comes with a syndication module that creates an RSS feed automatically for your site. However, the RSS feed is based on new contents that are added to your front page. I found a useful page that shows how to limit RSS to only blog items on the front page. However, as my blog resides on a different page, that did not help me.

Overall, the transition from old HTML to Mambo CMS was a challenging and at the same time fun process. The benefits that I foresee from using this CMS is the dynamic way it generates page content, so that changes in a content item can be automatically reflected in the site structure. I can also easily change the category or section membership of a content item to move it around. For example, if one of my working papers gets published, I can easily reassign it to the publications category to show up in the publication list instead. This is something that would have involved much more work in the static HTML environment. Although too early to tell, I have the feeling that the time spent on this transition will be well worth it in the long run.

Brain/Computer Merge

USA Today ran a short story on the integration of brain signals into video games. The featured company, Emotiv Systems, is about to start selling a neuro-headset that will be able to sense and transmit your brain signals into computerized video games. Video games will then integrate those signals into the play. While I don’t have the luxury of time to play much video game, I am fascinated by what this technology could mean to our virtual experiences. Take the example of a virtual world like Second Life (SL). While its 3D environment offers users a much more realistic experience, the ability of users to express, experience, and exchange emotions are still limited. If we were to add a neuro-headset, however, the opportunity for emotional exchange would become much greater. Musicians giving live in-world concerts will be able to feel the vibe of the crowd, and SL couples will be able to feel each other’s rush when they “kiss”. Does that mean a second life will be more addictive because it will be so real? Or does it mean that it will be less possible to separate a real self from a second-life avatar?