Drupal social publishing software

Drupal is a powerful content management system and framework that makes building powerful websites possible for mere mortals. Some of the posts here will be syndicated to Drupal planet.

Komodo's 4.3 Drupal Goodness and Wishlist

Andre posts about Drupal specific snippets coming with the next version of Active State's Komodo IDE. I started using Komodo after the 50 tips and tricks podcast and haven't looked back. Sure I still fire up BBedit for the odd job here and there, but for coding everything from PHP to HTML and CSS Komodo is my tool of choice these days.

With that said there is one Eclipse feature that I'm particularly jealous of. The patch handling features of Eclipse are outstanding. While the snippets will likely be handy there are already pretty simple ways of doing this using things like the module builder module or creating one's own templates in Komodo today. Perhaps some uber-patching features will be included in Komodo 4.4. Unfortunately it looks like that would be another year in the making if the past release schedule is an indication. Nevertheless Komodo will continue to be a tool that runs continuously on my computer.

Migrate a WordPress site to Drupal

Recently I've been helping a few folks convert websites from WordPress to Drupal. Presently this works for migrating to Drupal 5 so if you want a Drupal 6 site first migrate to Drupal 5 and then upgrade the site to Drupal 6.

There are a couple of different ways of approaching this task. In the distant past I've worked with wp2drupal. Those experiences are a distant enough memory that I can't speak to it one way or another. It does seem that it has been a while since that module was upgraded. On the other hand Wordpress Import is undergoing active development. One user I worked with in IRC was struggling with wp2drupal and found Wordpress Import to be very simple. Also a note that the Wordpress Import module has been updated since I've used it so some of the steps may not be necessary.

The process really couldn't be simpler. Start with an WordPress export of an extendedRSS file. With this in hand you'll need a Drupal site setup. The site can either be new or an existing site but these hints apply to using a new site. The import process is very simple you select the extendedRSS file and tell Drupal which WordPress users map to which Drupal users. With that done the data now resides in the Drupal database. Things are pretty good but there are a few tweaks that make things better. The creation time for the items has been set to the creation time from WordPress. However, the updated time is set to the time of the import. This really matters most if you have search enabled on your site. Search results show the time changed in the display.

Drupal 6.0 makes content management better than ever

The Drupal project today released Drupal 6.0. This latest release of the leading content management system makes managing web content easier and more powerful than ever before. Drupal 6.0 includes many great new features that improve usability, security, setup, themeing, user interfaces and just about every part of the system. Thousands of hours of testing have gone into this new release. The inclusion of many new JavaScript tools and the jQuery libraries makes administering a Drupal site easier than ever.

I've used many of the beta and release candidate versions and this is by far the most exciting release of Drupal yet. For administrators things like managing menus are so easy and beautiful that it is tempting to spend hours just moving menus around because it is so much fun. The Theme Developer module makes writing Drupal themes easier than it has ever been.

AdSense module gets awesome API

The wonderful Drupal AsSense module received a great new update tonight. Ironically one of the notes I made on the plane was to look into whether a universal patch for hiding the currently selected AdSense ID from the user profile made sense. It probably wouldn't have made much sense. Instead I came home to find out that the AdSense module now has a great API and modules can do all sorts of things. In addition there are a plethora of options for integrating with UserPoints, setting ID's by content type or taxonomy terms. All and all an outstanding piece of work.

According to the post the download will be here. Upgrading is pretty straight forward. Remove your old AsSense module and install the new one. A visit to the admin/build/modules page will reveal that you need to enable one of the two included modules, either basic or revenue-sharing.

I've been working recently on a presentation about open source software. This great upgrade will be included as a prime example of where open source and the community behind projects like Drupal make software better than many a closed-source shop.

Preview of the Forum Thread module

Forum Thread ModulePart of devoting my professional undertakings to Drupal has been to begin doing some more serious module development. Thus we have a preview of the Forum Thread module. It is a module that I'm developing for a sponsor and will be releasing on Drupal.org in the next couple of weeks. The design is to take Drupal's standard forums and in the most Drupalish way possible provide threaded forums that are more similar to the traditional forum look of My Little Forum or mailman archives. Having looked at several of the existing forum solutions I didn't care for the "bolt-on" nature of the forums.

Dreamweaver vs. Content Management part II

My position on Dreamweaver is no secret. Last fall I was talking with a colleague and journalism professor about the need for journalism schools to teach content management principles as part of their programs. A communications professional who knows nothing about Dreamweaver can have a bright future. A communications professional who knows only a little about content management is in big trouble.

After we were discussing the course yesterday evening I opened up Google Reader and read Ken Rickard's post about Amy Gahran's wonderful Poynter Online article about just this topic. Here are some of the high points from Gahran's article:

Apparently, this j-school (like many others) offers little or no training in true CMS-based tools. Their online courses focus on Dreamweaver.

That's a big problem, because tools embody mindsets. Focusing on Dreamweaver teaches exactly the wrong mindset for online journalism: that your Web site is mainly an island unto itself.

Quickly adding imagecache and lightbox to posts on Drupal sites

Imagecache options screen shot

Following up on yesterday's post this is a quick and dirty guide to adding images to blog posts using imagecache and Lightbox v2. The effect of these together is to create an image like the one in this post. When clicked the image will display in an overlay on this page thanks to lightbox. Imagecache handles making a static copy of the image available and resizing the image to provide several predefined sizes.

It is possible to do similar things in much better ways. For example creating an image field and a template for displaying posts that include the image. This method is a quick and dirty method using a minimum of additional modules. With Drupal 6 the FlexiFilter module will make this method even simpler.

The first step is to setup the necessary modules (imagecache and lightbox v2). The imagecache handbook page has some information about setting up presets for imagecache. The latest version of imagecache has new settings that deprecate some of the old settings. See the image in this post for a glance at what is in the newest CVS version.

jQuery goodness

While listening to the Drupal podcast #53 I decided it was time to take the plunge and do a few jQuery/Javascript things here. So comments will now preview live as they are being entered and thanks to the combination of imagecache (not jQuery related) and lightbox the pictures appearing in the more recent posts now display with the lightbox effect.

Lullabot workshops and server rebuilds

Lullabot LogoIt has been a busy 2008 so far. I spent the first full week of the year at the Lullabot Drupal API workshops in beautiful, rainy, Portland. It didn't take long to figure out that I also really wanted to head off to the themeing workshops in February as well. I came home ready to wrap up a couple of projects and spend countless hours working on patches and uber-cool modules and hacks for all kinds of sites.

Short shell script for speeding up getting Drupal modules

What follows is a short shell script I use for making it easier to get modules from the Drupal repository. It is best to use this script only with sources where you have a great deal of confidence in the source of the file you're downloading. Of course nothing substitutes for using good practices when it comes to deciding whether to install a program and its possible implications.

Read on for the code itself. It is a very simple script that makes it easy to copy the location of a file from a website and then download and uncompress the file. It could be much fancier but it does the trick.

#!/bin/sh

if [ $# -ne 1 ]; then
         echo 1>&2 Usage: dget URL
         exit 127
fi

curl $1 | tar xzv

To use this script on Mac OS X copy it into a text file. You then need to set permissions to make it executable. The easiest way to do this is:

Pages

Subscribe to Joshua Brauer: All Drupal items Subscribe to Joshua Brauer: Drupal Planet only