Migrating to Drupal
Drupal allows you to customize the layouts of pages easily using an extensible theme system. A convenient way to build a custom theme for your Web site is to base it on one of the themes packaged with Drupal. You can use different themes for certain users or in association with taxonomy terms.
Various combinations of the above five ingredients will result in surprisingly diverse solutions. Search the Drupal Web site for “recipes”. If you still cannot achieve what you need, you can customize Drupal or build custom modules.
We started Planetizen's migration by making a list of all the features we would need and identifying which Drupal modules would provide that functionality. This required testing different modules and configuration settings. We identified requirements that could not be met using Drupal modules. These features would require custom development. We then developed the taxonomy, defined user roles and permissions, and decided on the work flow. To maintain the original look and feel in the Drupal-based version, we developed a custom theme. Moving to a new CMS is also a good time to rethink current business logic and improve it. We took this opportunity to prune out less-popular Web site features.
The biggest migration challenge was pulling in five years' worth of data into Drupal—more than 15,000 news stories. Drupal story and page node types provided only basic title and body attributes for a node. Each news item stored in Planetizen had several other attributes. What we needed was our own custom content type. Drupal's flexinode provides an easy way to create custom content types without programming. Unfortunately, it turned out that the flexinode route would be an inefficient solution for us. Using flexinode, each Planetizen news story would have taken up to eight separate table inserts as opposed to the standard single insert, due to the way flexinode stored data.
Drupal's wealth of third-party modules came to the rescue. We discovered that a book review module was very similar to what we needed. By examining its code, we were able to customize the book review module to create the content types we needed. We then created custom scripts to insert Planetizen's data into the appropriate fields directly in Drupal's MySQL tables.
We did encounter some limitations with Drupal. One limitation was the mechanism for maintaining time zones and daylight savings time in Drupal. Our workaround was to use only the PST/PDT time zone and manually update the time zone when it was time for a daylight savings time change. This is a known issue and is being addressed by developers.
Flexinode makes it possible to create custom node types without programming, but as we discovered, it has its limitations. The alternative is to develop custom node types as modules. Drupal provides a solid foundation for creating your own modules, but it requires programming experience. The Drupal team is addressing this issue with the Content Construction Kit (CCK), an effort currently under development that aims to make it easier to create custom node types.
One problem we ran into had nothing to do with Drupal. Our production Web server was running an older version of PHP that could not be upgraded, due to some hosting restrictions. This caused the search module to fail; however, we were able to circumvent this problem by modifying the search module. We thanked ourselves once again that we were using an open-source CMS.
Security patches and core code updates for Drupal are released on a regular basis. This is a good thing, but upgrading customized Drupal installations can be cumbersome. We recommend limiting customizations to specific modules or developing custom modules. Also, using a version control system, such as CVS or Subversion, can help in tracking your customizations against official Drupal releases.
We launched the new Drupal-based Planetizen Web site in September 2005 and received positive feedback from readers. Since the launch, we were able to add new sections and features without having to develop them from scratch (Figures 5 and 6).
Realizing the promise of Apache® Hadoop® requires the effective deployment of compute, memory, storage and networking to achieve optimal results. With its flexibility and multitude of options, it is easy to over or under provision the server infrastructure, resulting in poor performance and high TCO. Join us for an in depth, technical discussion with industry experts from leading Hadoop and server companies who will provide insights into the key considerations for designing and deploying an optimal Hadoop cluster.
Sponsored by AMD
Built-in forensics, incident response, and security with Red Hat Enterprise Linux 6
Every security policy provides guidance and requirements for ensuring adequate protection of information and data, as well as high-level technical and administrative security requirements for a system in a given environment. Traditionally, providing security for a system focuses on the confidentiality of the information on it. However, protecting the data integrity and system and data availability is just as important. For example, when processing United States intelligence information, there are three attributes that require protection: confidentiality, integrity, and availability.
Learn more about catching the bad guy in this free white paper.
Sponsored by DLT Solutions
| Designing Electronics with Linux | May 22, 2013 |
| Dynamic DNS—an Object Lesson in Problem Solving | May 21, 2013 |
| Using Salt Stack and Vagrant for Drupal Development | May 20, 2013 |
| Making Linux and Android Get Along (It's Not as Hard as It Sounds) | May 16, 2013 |
| Drupal Is a Framework: Why Everyone Needs to Understand This | May 15, 2013 |
| Home, My Backup Data Center | May 13, 2013 |
- Designing Electronics with Linux
- New Products
- Linux Systems Administrator
- Senior Perl Developer
- Technical Support Rep
- UX Designer
- Web & UI Developer (JavaScript & j Query)
- Making Linux and Android Get Along (It's Not as Hard as It Sounds)
- Dynamic DNS—an Object Lesson in Problem Solving
- Using Salt Stack and Vagrant for Drupal Development
- Reply to comment | Linux Journal
8 hours 5 min ago - Dynamic DNS
8 hours 39 min ago - Reply to comment | Linux Journal
9 hours 38 min ago - Reply to comment | Linux Journal
10 hours 28 min ago - Not free anymore
14 hours 30 min ago - Great
18 hours 17 min ago - Reply to comment | Linux Journal
18 hours 25 min ago - Understanding the Linux Kernel
20 hours 40 min ago - General
23 hours 9 min ago - Kernel Problem
1 day 9 hours ago
Enter to Win an Adafruit Pi Cobbler Breakout Kit for Raspberry Pi

It's Raspberry Pi month at Linux Journal. Each week in May, Adafruit will be giving away a Pi-related prize to a lucky, randomly drawn LJ reader. Winners will be announced weekly.
Fill out the fields below to enter to win this week's prize-- a Pi Cobbler Breakout Kit for Raspberry Pi.
Congratulations to our winners so far:
- 5-8-13, Pi Starter Pack: Jack Davis
- 5-15-13, Pi Model B 512MB RAM: Patrick Dunn
- 5-21-13, Prototyping Pi Plate Kit: Philip Kirby
- Next winner announced on 5-27-13!
Featured Jobs
| Linux Systems Administrator | Houston and Austin, Texas | Host Gator |
| Senior Perl Developer | Austin, Texas | Host Gator |
| Technical Support Rep | Houston and Austin, Texas | Host Gator |
| UX Designer | Austin, Texas | Host Gator |
| Web & UI Developer (JavaScript & j Query) | Austin, Texas | Host Gator |
Free Webinar: Hadoop
How to Build an Optimal Hadoop Cluster to Store and Maintain Unlimited Amounts of Data Using Microservers
Realizing the promise of Apache® Hadoop® requires the effective deployment of compute, memory, storage and networking to achieve optimal results. With its flexibility and multitude of options, it is easy to over or under provision the server infrastructure, resulting in poor performance and high TCO. Join us for an in depth, technical discussion with industry experts from leading Hadoop and server companies who will provide insights into the key considerations for designing and deploying an optimal Hadoop cluster.
Some of key questions to be discussed are:
- What is the “typical” Hadoop cluster and what should be installed on the different machine types?
- Why should you consider the typical workload patterns when making your hardware decisions?
- Are all microservers created equal for Hadoop deployments?
- How do I plan for expansion if I require more compute, memory, storage or networking?






Comments
about drupal
Iam newbie for drupal.I understood drupal content management ,menus and blocks.But how to customize themes and blocks.
querie
How do we customize a theme as per our requirement?
FrontPage
Hi,
how did you realize the content view on the frontpage? The four tab-hovers?
Regards
online resources
Why am I denied access to the online resources refered to in the article?
svendp@surfmail.dk
denied access
It's fixed now. "Something" was wrong. I never found what, it looked perfect, but after reloading it several times it suddenly started working...
Ain't computers great!
Webmaster
"I have always wished that my computer would be as easy to use as my telephone.
My wish has come true. I no longer know how to use my telephone."
-- Bjarne Stroustrup