MetaSkills.net

Cooking with Drupal

Posted On: January 27th, 2006 by kencollins

Cooking With DrupalOne of my few New Year's resolutions was to blog often in the year 2006, in fact, I promised myself I was going to write at least one post every day. Well it's been two weeks since my last update and the world has missed some pretty good brain dumps from yours truly (sorry about that) but I have been keeping good notes and I do have great news about today!

Over the past few weeks I have been cooking up a storm in my digital kitchen with one of the best content management systems around, Drupal. This is the same CMS that runs the metaskills.net site and it has a good history for not just being a Blog or Forum software but an entire community platform, thus Drupal's tag line, Community Plumbing.

How Can You Say Drupal Is The Best CMS ?

OK, I would like to take back my exclamation about Drupal being the best CMS. A lot of people make absolute statements like this and they are always never wholly true. Choosing the "best" CMS is a relative concept and only possible when one starts backwards and defines their own end requirements and vision purpose of the system needed. For instance, if all you wanted was a personal blog, I would highly recommend WordPress as the right CMS for you. In that same vein, if you are new to the internet and tend to stay in the 3-foot section, a hosted non open source blogging system like TypePad, LiveJournal, or even Google's Blogger.com would be a good choice. These are great for beginners that have no interest in the back end setup work or maintenance typically associated with a professional CMS.

On the other hand, if you do real business on the internet, a SaaS might not do. That's OK because your still in for a good swim as there are numerous choices to be made. If you are a small publishing company like iPodLounge, you could use pMachine's Expression Engine. Its tag-based and well documented system is very easy to use, customize, and control permissions to content and features. If you are a software developer and need workflow, project management, CRM, bug and issue tracking Atlassian's JIRA or Confluence could be right for you. Moving on into the open source software realm, options include Zope or Plone for the Python programmers to Mambo or even Drupal for the PHP enthusiasts. Many of the features in all of these system blur together and it really does matter on many personal and business factors to agree on the "best" CMS for your needs.

That Smells Good, What Ya Cooking ?

Ah yes, that! Well now that I have avoided a flame war by sidestepping the "best" CMS argument let's get back into my favorite CMS at the moment, Drupal. When I first launched metaskills.net I used the current 4.6 version. Since then the Drupal team has been hard at work on version 4.7 (currently beta4) and to help give back to this great open source software movement, I decided to learn how Drupal works on the back end and contribute my blog theme. Doing so meant I had to actually learn a little PHP and JavaScript and the correct Drupal API and publishing hooks, both old and new. I have to say that I am very impressed with the Drupal system. Its power and extensibility is quite unique and its community demonstrates the best practices of what open source software is all about.

Here is the new Meta Theme for Drupal, this is a demonstration site that will serve as a working reference and online documentation for the theme's project on drupal.org. Here is an abstract list of some of the new features.

  • Total CSS over write of all Drupal's 4.7 features
  • The world's best style sheet switcher with DOM2 support and cookies
  • Custom image gallery theme with dynamic lightbox.js support
  • PNG support for IE 6 and lower
  • Multiple code syntax highlighting options
  • Custom and dynamic maintenance page
  • Dynamic comment depth integrated with CSS rules

Please feel free to browse this site and comment and ask question. If you see any problems, let me know as I will be actively supporting this them for upcoming Drupal releases.

 

josh koenig

  HOMEPAGE  | February 8th, 2006 at 02:44 PM
josh koenig Hey ken! We're up here at Drupalcon in Vancouver making a site on the spot and we're going to use your theme. It's quite something! Thanks for making and contributing it!

Ken Collins

  HOMEPAGE  | February 9th, 2006 at 11:45 AM
Ken Collins And thanks for the kudos on the theme! Please help me out by testing it. I would love to have some feedback on any features or code that is needed. BTW, I noticed you have a WordPress blog. What is up with that?

Roel Assenmacher

  HOMEPAGE  | February 16th, 2006 at 12:58 PM
Roel Assenmacher Hi Ken, First of all, great theme you made. I am going to use it for our new site, but I have a question: We would love to use a Flash movie as the site header, instead of a image. We have tried several ways to realise this, but we couldn't get it working. Is there a way to use a Flash movie as header? Thank!

Ken Collins

  HOMEPAGE  | February 16th, 2006 at 02:40 PM
Ken Collins That is a good question. I had always anticipated that people would like to customize that image. Perhaps even with a JavaScript fade technique of a few images. Right now that image is in a DIV that is specifying a background (the image you see) with CSS. The value for that CSS declaration is in a couple of places since it is (1) a theme option and (2) a user defined style sheet option. Let's take into account that you are using the default meta theme (green) in your Drupal install. You can find the CSS declaration for the background in the "pagestructure.css" file around line 302 for the #masthead-image and the image is loaded via that url variable. Although I have never tried, I "suppose" you could change that to a .swf file. I have never experimented using a Flash file in a CSS declaration. I do know however, that if you did do that, you would loose the ability to detect for it since the flash movie would not be in it's normal OBJECT or EMBED tags within the flow of the XHTML. You also have the option of taking that DIV and CSS declaration and giving it a specific width (experiment with this starting around 850px) and then putting another DIV in that with an absolute position and the same specified width and height and use that to load your flash code into the XHTML. If you took this route, you would more than likely lose the ability to have a site that worked as a liquid/fixed width user specified layout, the MetaTools at the top.

joethejoe

  HOMEPAGE  | February 20th, 2006 at 04:01 PM
joethejoe First, thanks for sharing this impressive work. I've got a fresh install of 4.7 (last install I did was 4.3) anyway my question is how do I get the "Post new comment" to appear at the bottom of a comment as it does here and elsewhere?

joethejoe

  HOMEPAGE  | February 20th, 2006 at 04:32 PM
joethejoe As usual after asking a lame question I find the answer. Thanks again for the outstanding theme.Any chance you can flesh out and improve the forum look with your theme?

Ken Collins

  HOMEPAGE  | February 20th, 2006 at 05:57 PM
Ken Collins I know exactly what you mean. Sometimes I think Drupal can be a click-a-thon when it comes to turning things on and off. I definitely will work on the forums appearance. Things at the top of my to do are adding more conventions for authors into the blog feature. I'll then get bored and turn to the forums :)

Roel Assenmacher

  HOMEPAGE  | February 22nd, 2006 at 03:48 AM
Roel Assenmacher Hi Ken, Thanks for your answer... I found out that it is not possible to use a flash movie from a css file. So we came with another idea, we start using multiple images and let them change every 5 or 10 second or so. Nice idea, but also not working from css. It seems you can only set the background tag with a hard image file, and no php, swf or js file... So, someone came with another idea: why not change the theme every 5 seconds. It seemed do-able, because the theme can be set by pressing a button, so why not automatically, using a timer script. Now, the problem is not the timer script, but setting the theme. We have tried several ways, but cannot find the correct command to set the theme from the php file. Can you give us a little push in the right direction to do so? Thanks again!

Ken Collins

  HOMEPAGE  | February 22nd, 2006 at 04:27 AM
Ken Collins I tell you what. Over the next few days I'll be working on some upgrades and a bit of cross-browser testing with this theme. When doing so, I'll add another layer DIV in the masthead that should work as an alternate image (themeable area) by inserting media within the structural content, the page.template file. In this way, the media can be inserted directly into the HTML like most are used to which means easy access to multiple images via a JS fade or "maybe" even a flash file. If you can wait a few days? BTW, I do not like the PHP solution. I think it will not work since it requires a page refresh which is one of the reason I never went with a PHP-based stylesheet switcher. Typically you want to stay in the realm of JS and DOM level 2 so you can actively change page presentation without a refresh.

Anonymous

  HOMEPAGE  | May 16th, 2006 at 06:58 PM
Anonymous I've hit a bit of an obstacle with the Meta theme. It looks delicious in firefox, but if I open it in IE, it can't be read. Funny thing is, it only applies to the front page, node. (see www.nywf.org.au) Any suggestions as to how I can overcome this snag? Most of my users will be IE based. Thanks for your help, and especially for the gorgeous theme! Cheers Kat

Ken Collins

  HOMEPAGE  | May 17th, 2006 at 06:43 AM
Ken Collins

I can see in my code that the document tree in the "contentarea-bounding" DIV goes to these there levels.

contentarea-bounding
  - contentarea-left
  - contentarea-middle1
  - contentarea-right1
contentbgbottom-bounding
  - etc...

Your document tree on your site looks like this:

contentarea-bounding
  - contentarea-left
  - contentarea-middle1
  - contentbgbottom-bounding

Where you nested the "contentarea-right1" DIV, I'm not sure. But somehone you altered the structure of your site and this theme is very pickey, moving one thing changes alot and you really have to know your CSS to fix it.

Anonymous

  HOMEPAGE  | March 8th, 2007 at 03:31 PM
Anonymous any chance of the above taking place?

Michael

  HOMEPAGE  | June 1st, 2007 at 11:56 PM
Michael Hi there.. I love the theme and the work you've done for this.. However myself and a lot of the drupal community are dying to have a version 5 compatible meta theme.. Are you going to be doing this at any point?

Rob

  HOMEPAGE  | August 18th, 2007 at 07:31 AM
Rob As above, any movement on a Drupal 5 version? I am open to paying for some work if you are available.... I left my email let me know if this is something you can do...