Drupal Podcast No. 41: The New Lullabot.com
June 6, 2007
- Artist: Lullabot
- Title: Drupal Podcast No. 41: The New Lullabot.com
- Album: Drupal Podcast
- Track: 41
- Year: 2007
- Length: 55:21 minutes (13.15 MB)
- Format: Mono 22kHz 33Kbps (VBR)
Angie Byron, Nathan Haug, and Jeff Robbins talk about the latest Drupal news and the development of the new lullabot.com site design.






Comments
Redesign
Finally, the long awaited podcast :-)
Very nice redesign, congrats!, only one thing with the red titles and blue background of the home page, maybe it have so much contrast.
Paco
"See Also" block
Hi guys,
Once again, very nice job reading my mind. I was hoping this podcast would focus on your redesign (new features in 6.0 can take it's place in line ;).
Thanks for explaining how you did the "See Also" block but one thing still has me intrigued... how do you get that block to display in the middly of your center column?
Is it, yet another, magical feature of the ZenGen theme? Or, am I just being a tad slow this morning?
Thanks again for the great work you do.
Kevin
A couple of ninja theming tricks
Here's how to create a new "node inner" region for your Drupal theme.
In template.php, I've created these regions:
<?phpfunction lullabot2007_regions() {
return array(
'left' => t('left sidebar'),
'right' => t('right sidebar'),
'content_top' => t('content top'),
'content_bottom' => t('content bottom'),
'header' => t('header'),
'home_header' => t('home header'),
'node_inner' => t('node inner'), // <--- this is the one
'footer' => t('footer'),
);
}
?>
Then we use the
_lullabot2007_variables()function (which would be called_phptemplate_variables()if we were using a PHPTemplate-based theme) in order to call this block in as a variable for our node template:<?phpfunction _lullabot2007_variables($hook, $vars) {
switch ($hook) {
// stuff deleted
case 'node' :
// the node-inner region:
if ($vars['page'] == TRUE && $vars['node']->type != 'content_workshop') {
// notice that the region only gets called when
// we're on a node page ($vars['page'] == TRUE)
$vars['node_inner'] = theme('blocks', 'node_inner');
}
// stuff deleted
break;
}
return $vars;
}
?>
And then finally, the node.zen.php (which would be called node.tpl.php if it were PHPTemplate) file looks like this:
<div class="<?php print $node_classes ?> clear-block" id="node-<?php print $node->nid; ?>">
<?php if ($page == 0): ?>
<h2 class="title">
<a href="<?php print $node_url ?>"><?php print $title; ?></a>
</h2>
<?php endif; ?>
<?php if ($picture) print $picture; ?>
<?php if ($submitted): ?>
<div class="submitted">
<?php print $submitted ?>
</div>
<?php endif; ?>
<?php if (count($taxonomy)): ?>
<div class="taxonomy"><?php print t(' in ') . $terms ?></div>
<?php endif; ?>
<div class="content">
<?php if ($node_inner) { ?>
<div id="node-inner">
<?php print $node_inner; // inner node block ?>
</div>
<?php } ?>
<?php print $content; ?>
</div>
<?php if ($links): ?>
<div class="links">
<?php print $links; ?>
</div>
<?php endif; ?>
</div>
Note that this region is only appears on node pages. But that's really all it takes. You can assign blocks to the "node inner" region and they'll show up inside of the "content" div of your nodes. Use a little CSS to float 'em right and give 'em some style and you can have your node content wrap around the block just like you're seeing on this page.
Wow, you guys are amazing!
Wow, you guys are amazing!
Move node to specified region without blocks
Here's a tricky scenario: What if you want sticky nodes to go to a region other than the default $content without the use of blocks?
function _phptemplate_variables($hook, $vars = array()) {switch ($hook) {
case 'node':
if ($vars['node']->sticky) { // I know this part works
/* Hey node, get your *** in the region $content_top and out of $content... Now please! Can you sense my frustration? :) What do you put here??? Am I on the right track? */
}
break;
}
return $vars;
}
Thanks! If you can answer this, that would be the most Drupal ninjaness I have seen to date!
New site looks great!
Just stopping by to say I love the new look and appreciate you guys taking the time to share. Also, I was trying to find a way to contact Robert Douglass, b/c I thought he might appreciate a gaffe in the office here @ Ubercart today...
I posted about it here:
http://www.ubercart.org/forum/general_discussion/1057/robert_douglass_dr...
The skinny is that Lyle got a little confused about his U.S. History after another day of Drupal coding... but it's his 22nd birthday, so I'll give him this one. : )
Links mentioned in the podcast
Thanks for a great podcast! I love the new digs. It's just what you all needed and deserve.
Any chance you might be able to provide a list of links mentioned in the podcast?
I caught the ohloh.net URL, but I wasn't able to decipher the SVN host Nate mentioned.
I've been running my own local SVN server for a while, and have gotten hooked on SVN. It would be great to have a web accessible host, so I could share with others.
Thanks!
mlsamuelson
SVN = Unfuddle!
Yes, we use an SVN hosting company called Unfuddle. They've also got a ticketing and messaging product attached that is sort of similar to (but better than) Basecamp. We hit the limits of Basecamp really quickly. Unfuddle is better in the project/ticket management area, but the SVN integration makes it a no-brainer.
They've got a free version and I highly recommend trying it out!
A Drupal solution?
What is this world outside Drupal you speak of? ;-)
With two key summer of code projects, Jakob Petsovits' RCS abstraction for the Project module and Anthony Oliver's Extend Case Tracker Module, how far do you think we are from ticketing and messaging tied to version control suitable for smaller Drupal shops, if not for Lullabot?
Repository Structure
New site looks great, seems functional & well planned out.
Sweet podcast, really interested in your use of SVN with your sites.
I've recently started using SVN for managing client drupal projects, & have been finding my feet with how best to lay out the repository structure, and manage everything. Much of my initial set-up was based on a great post by styro at http://drupal.org/node/118936#comment-200280.
I'd be really interested in how you guys handle this at your end. For example, how do you store & reference contrib & custom modules?
You gave us a good base coverage in the podcast, but wondered if you'd considered writing up a small article on the subject in future? It seems alittle niche at the moment, but I've been seeing more & more developers realising the benifits of CVS/SVN for thier own project developments.
Thanks for putting together all the great info on this site!
Phil
Hey Lullabots! I enjoy your
Hey Lullabots!
I enjoy your podcasts everytime and learned a lot from them. Just wanted to kick some "Great work" .. and "Keep it up" .. lines. You're an important part of the Drupal community.
And your new website is nice. I like it.
Best wishes from Berlin!
Nice job
Just wanted to stop by and check the site after listening to the podcast, and I was pleasantly surprised, you guys do great work but I to have suffered from the old drab design problem that lingers closest to home. I finally consolidated my blog and took the time to implement my freelance site. This is a nice representation of the type of great work you guys consistently put out.
Thanks for all your hard work,
RobbieTheGeek
Menu system and File system
Hey fellows,
Great show. Just 1 comment I thought I'd post.
You mention the new Menu system and new File system for Drupal 6, and then talked about promoting Matt's book on the front page of the site. I got the book and I think it's great, but there is one chapter for the menu system, and one chapter for the file system for Drupal 5.
My question is, how long will my new found Drupal knowledge from Matt's new book be valid when Drupal 6 comes out? Will there be a 'book patch'?
They'll both be
They'll both be significantly different, but that doesn't diminish the importance of understanding Drupal 5's systems. It'll be a good year before most people are making complicated Drupal 6 sites, with all of the popular modules, so the only sane option for now and for months to come is to make sites with Drupal 5. Any customizations that you make to your Drupal 5 site will need to be ported, which means understanding both systems... Drupal 5 and Drupal 6. So absorb Matt's book as much as you can... it will be relevant information for quite some time.
Menu Import/Export
In the podcast, Jeff complains having to migrating menu structure from the dev site to the live site by hand. I was having that problem too, so I wrote some code to export a menu to HTML which can then be imported into a different site. This functionality is there in my Quick Admin Menu module.
cheers,
-tao
Moving changes from a testing server to a production server
There was an interesting discussion about how to handle upgrades to a site that were done using graphical tools. The problem was how are these changes to be moved from a testing server to a production server in a controlled manner?
I just came across the drush module (drupal shell) and this seems to me to be the perfect solution. If everything can be done via a command line rather than by point and click, a an upgrade script can be generated (and even stored in CVS).
Here is the link I found to drush:
http://unbiskant.org/blog/frando/new-drush-module-install-and-update-mod...
about node titles
at first, i was not convinced by the http://drupal.org/project/widont or http://drupal.org/project/typogrify (does what widont does + more) modules
but then i came accross this page http://www.lullabot.com/audiocast/drupal_podcast_no_43_new_features_drup...
and i'm pretty sure the "6" of the "Drupal Podcast No. 43: New Features in Drupal 6" feels very lonely alone on its line :)
just to mention you could use one of the two modules to prettify the site even more
cheers
Post new comment