I was going to do a review of installing LAMP, Linux-Apache-MySQL-PHP on a variety of Oss this month...but it will have to wait. I got as far as doing an install of a PuppyLinux LAMP stack on a 256k laptop that came off someone's junkpile, which didn't actually take more than half an hour or so...then client work got in the way. So instead, you'll get something of a grab-bag of newsy stuff and maybe even a little code.
WordPress
Last month I talked about theming, using a number of different approaches. I'm still exploring Artisteer, which puts together well integrated themes that you can add to with a little work, but one of the neat things about the world of CMS is how many great themes there are out there. It's a fact of life though that designers don't give away their best work, unless they're doing it to build cred. That's fine, and fair, but it means that you have to go to each designer to see what their best work is. Enter ThemeWars.
ThemeWars, a recently started website, gets designers to go head to head with their best work, hosts the winner of each battle in their store, and gives the designer a 25% cut. It's a nice concept, which could easily be expanded to the other CMSs. A single theme costs $69, or $149 with the PhotoShop files included, or you can buy an "All Access Pass" for $147 with a $20/month fee afterwards. They're still in early days, so there aren't a ton of themes available yet, but the ones they do have are very well done.
Joomla!
I happen to be writing this on July 22, 2009, a mildly significant day in Joomla! history...the day that 1.0 stopped being officially supported. The nice thing about open source systems is that though there will be no more patches or security fixes from the Joomla Core team, the current version, 1.0.15, isn't broken. In fact, it's pretty darn stable. Just not that advanced.
Work goes forward on version 1.6, which is expected to launch in early fall, but nobody should hold their breath...or waste it complaining. These things take the time they take...and a broken CMS doesn't help anyone. Meanwhile 1.6 Alpha version was released on July 1st, for those of you who need to work on module upgrades, or just can't wait.
For those of you who are more than happy to wait, relax. Joomla! 1.5 will be officially supported for three years after 1.6 is formally released.
An excerpt from the Joomla Developer's forum gives some of the features of the Alpha release, notably with the hoped for increases in group level access control included:
- Implement a new JForm library package [complete].
- Implement a simple way of providing translation in JavaScript [complete].
- Implement new controller dispatchers for more robust request routing [complete].
- Implement a new access control system that needs to at least emulate what is in 1.5, allow adding of new groups and access levels, and allow you to set new "view" rules for at least articles [nearly complete].
- Implement and standardise several new event triggers [in progress].
- Implement a JContent class that will be used by content plug-ins and views [in progress].
- Upgrade to Mootools 1.2 [in progress].
- Finish the new extension updater work [in progress].
- Menu manager re-work -- added since it's broken in 1.6 [in progress].
The Joomla! 1.6 Alpha release can be found at: https://joomlacode.org/gf/project/joomla/frs/?action=FrsReleaseView&release_id=7362
Drupal
Hiding Page Titles (Sometimes) in Drupal 6
Drupal doesn't give you the option of turning "node" titles on or off, and you can't create a page unless you give it a title. Blocks are different, allowing you to use <none> to hide a title, but pages need them for Drupal to know where they are. If this were Joomla!, you could turn the pages titles on or off from the advanced parameters settings on each page, or do it globally from the control panel...but it's not and you can't.
You can hide titles globally fairly easily, by going into your theme files and editing:
node.tpl.php
(Note: themes may vary as to where and what the relevant code is. I'm working with an Artisteer created theme here, but you should be able to find the relevant code with a quick search of your files. In Zen, it's in the same file but doesn't have the wrapper.)
The title is displayed by the code:
...and all you need to do to globally be rid of it is to comment it out.
Don't delete it...you'll miss it somewhere down the road if you do...but still, that's not much of a solution, because you're more likely to want the option of turning the title on or off as you choose.
That's not that hard, but it's a bit more interesting.
I made my pages do it by checking for a codeword in the title and hiding the clause if it found it. My codeword: HIDETITLE. Clever, huh?
So now we need a little more PHP, but not much, just an "IF" statement and a way to check for an embedded substring. We'll use the "STRISTR" function, which isn't case sensitive.
So we get:
Because STRISTR is looking for an embedded string, and isn't case sensitive, you can go wild with the title contents as long as you include HIDETITLE, hidetitle, HiDeTiTlE, or some variant of it in there. For example:
"The Hidden Side of Me (HIDETITLE - this keeps the title from displaying)"
Works perfectly well, and helps the next person figure out what's going on.
EndNotes
It's summer, and you know...it might do you some good to get away from your keyboard a bit and get mildly irradiated by the sun. I've always marveled at the tan poolside loungers in executive laptop ads, who are soaking up the rays and doing important work at the same time. Especially since I can't see a thing in all that glare.
But man doth not live by code alone. So go on, lock your gadgets up somewhere safe, put on a bathing suit and go get wet. I promise that as soon as you forget that weird code glitch you were working on the solution will pop into your head. Probably.
Meanwhile, I'm off to find a hammock and a book.
is a former columnist for Byte.com and Sr. Editor of TechRevu. He's been trying to organize the world by developing database applications since he owned his first PC and is currently dividing his time between writing about technology and web development and putting together CMS driven sites for clients.