|
This site is a relatively simple demo of how a small newspaper-style site might be set up using Panels, Nodequeue and Views. The theme is a custom theme (though I an considering cleaning it up and releasing it) based upon the theme used for Assign Blame. Most of the pages you see are using only Panels, no blocks. The theme provides a customized layout to make this work nicely, and all of the panel pages explicitly tell it not to generate blocks. The Drupal administrative areas still use blocks normally, so when going outside what the site presents, these things still work. The tools usedThis site is built on Drupal 6.11 with the following modules:
It currently contains no custom modules at all, though I do have DHTML Menu installed to make administration a little bit easier. The front pageThe front page is set up using the custom layout, which is a variant on 2 column stacked, with the addition of a sidebar on the right. The 'top' area is specially colored to highlight whatever content is in it, which happens to be a view showing the nodequeue for the 'lead story'. When logged in, every story node has a link to 'make lead story'. When that happens, the previous lead story will be removed and the current one added. The next area contains the 'left' and 'right' sections of the Panel layout, and each block is an instance of the same view, 'featured stories'. The featured stories view uses the Taxonomy smartqueue to make it easy to make a list of featured items per taxonomy term. In the sidebar are two 'custom' blocks that use a little CSS (some of it in the theme, some of it in the panel itself) to style things. The taxonomy term pageThe taxonomy term page is overridden to provide sections for Business, Entertainment, etc. This is using the same custom layout as the front page, but the 'right' section has been CSS'd into a fixed width so that the left side remains fluid, allowing me to put a nice ad in there. The top item is another view using the same 'featured stories' view, but this time using a different display so we can get teasers. The left side is using the very same view, but this time with a limit of 4 items and an 'offset' of 1 so that it will skip the first item. At the top of the sidebar is the description of the term. Since I couldn't think of much to put in the sidebar, you get garbage text there. The node pageThe node page is, again, the same layout. But since I didn't really want the top or left or right, those don't print if they're empty. Instead, this is using the 'bottom' section which is normally empty. The node content, comments and content are all separate panes. On the right, we use a relationship to get the term context out of the node context, and use that to provide the term description (again) as well as the 'featured' articles in that section. This, is the same view you see on the front page. This pageThis page is a simple one column panel, rather than a node. Final notesI used this site to help find bugs in Panels. I found 3 while I was doing it, and identified a couple of places where the workflow really sucks. Plus, it really highlighted how much I need a couple of features I haven't gotten around to, and it also demonstrated some difficulty in getting the 'more' links on the views panes to go where I want them to go. A little bit of custom code can do it quite easily (hook_panels_pane_alter) but I'm trying to avoid any actual custom code except for the theme. |