Finally, the much anticipated SimpleMenu 3.0 is finally out!
Brand new is an entire rewrite of the jQuery menu code and CSS. The menu code is now based on Superfish which is an “an enhanced Suckerfish-style menu plugin for jQuery” written by Joel Birch. This new version most notably adds a hover delay on menu display, giving those fast-moving hands a breather this time around—that’s right, those submenus don’t disappear right away any more, much easier to use :-)
Additionally, I’ve rewritten it to remove the unnecessary AJAX callback, I’m not even sure why it was there to begin with, ah well. That drastically speeds up the menu now and reduces flicker.
As I was re-rolling my JS aggregation patch for Drupal, I stumbled upon an interesting solution to an age old problem I’ve encountered numerous times.
When I write various JavaScript files for websites, I often like to serve them out compressed—-not only to save on bandwidth but also to speed up the loading time for users. To accomplish the task of compressing JavaScript files, I usually resort to using tools like Dojo ShrinkSafe and Dean Edward’s packer (the same compression that jQuery uses as well).
So one of the problems with Drupal (and well just about any other website out there) is the fact that it is quite easy to post forms more than once. Why do you think ecommerce sites take such huge precautions for preventing multiple form submissions?
In the case of Drupal, this can be quite annoying, especially for those running sites with huge user bases, all of which have varying speeds of internet connections and all of whom like to click that “submit” button more than once.
Yes, that’s right, I have renamed my Menu bar module to SimpleMenu. Thanks to Derek Wright and his wonderful CVS rename script, this was a cinch.
So why the change? Well to better align what the module does with its name: it provides a single, simple menu that is easily accessible.
Not only that, but the name has more significance as it’s going to be part of a new suite of modules that I’m building to tackle common tasks that should just work—simply. More on that later though :-)
Well I’ve been so busy with work lately, I haven’t had much time to post this blog. Going to try and work on that more this year, maybe as a new after-the-fact New Years resolution, or something to that effect ;-)
But one of the projects that I recently worked on that I can finally talk about is the new Sony Musicbox website, which actually launched back in November 2006. Sony Musicbox is a website that hosts music videos for all of Sony’s artists. Users can come and watch videos, comment & rate them, add them to their favorites, and also add their own tags to videos too. Users can also add friends to their buddylists and write in their very own blog!
Yes, that’s correct—my new OLF module is ready for consumption. What’s OLF? Well it stands for “outgoing links filter” and this module is a simple filter that finds all outgoing links (e.g., links that point to external websites relative to your website) and allows you to add a customizable class to these links. From there, you can easily add some CSS magic to add in icons or attach some unobtrusive JavaScript.
So why do that? Well it’s a method for making more accessible links. And plus, opening a new window to show that you are leaving the site is just super annoying—an icon is far more unobtrusive.
A little less than one month ago, I released version 1.0 of my Drupal admin menu bar.
Today, here at EuroOSCON 2006 in Belgium, I am pleased to announce that version 2.0 of Menu bar for Drupal is now out—a full blown module, fully contained, no more theming hacks necessary :-)
So what’s new? Here’s a short list:
As a self-proclaimed Drupal theming “ninja”, I’ve built plenty of sites that don’t look like Drupal. But to be honest, it’s certainly not that easy. So for the next 5.0 release of Drupal, I’ve done my best to get in as many patches as possible to making theming in Drupal easier—and you know what, we’ve certainly made some great progress. Here’s a rundown of the top theming patches that I got in:
This was a great little patch that made it very clear and consistent how to add CSS files in Drupal. In 4.7, adding CSS files was a bit of a mystery, as I outlined in a previous Lullabot article. Now, starting with 5.0, it’s very easy: drupal_add_css($cssFile, $type = 'module'). That’s it. Just specify the type of CSS file, core, module, or theme, and this function will handle the rest, loading them in a correct and consistent cascading order.
The new MTV.co.uk website has finally launched, completely powered by Drupal 4.7+ (plus a few theming patches that I wrote for Drupal 5.0).
For this project, I was one of the co-architects where my primary role was to figure out how to make Drupal look like MTV wanted—not a simple task to say the least :) The intial MTV designs had over a dozen complex CSS files, along with hundreds of images. Additionally, each piece of content could be themed differently to fit the channel (e.g., MTVUK, MTV2, VH1, Flux, etc.) it was associated with-on occasion, multiple channels too. Under each channel there were different sections that all had different types of layouts, from 1-3 columns, to various amounts of associated content (e.g., blocks).
One of the biggest problems I run into when creating Drupal sites is a proper admin theme. Sure, there are various techniques to have a different admin theme, but often I want to integrate that into the current design. Many times that is ok, but the real problem was the admin menu—where the heck could I place it, it often didn’t fit the design I was working on.
Well I thought about it a bit, then I took some HTML, theming logic, and a bit of CSS (and JS to help out our IE friends), and voila, an admin menu bar for Drupal that doesn’t interfere with your design.