Here are the statistics for this project:
| Server and Drupal setup / installation | 10 hours |
| Learning / testing out Drupal | 54 hours |
| Researching a starter theme for A&T Systems Inc' website | 11 hours |
| Developing A&T Systems Inc' website | 74 hours |
Creating content based on content types was not difficult at all. It was the easiest part of this project.
Majority of the time spent in developing A&T System's was "theming." That is, customizing the CSS, adding graphics, and creating custom templates. For someone that is not yet ready to develop Drupal templates or theme from scratch, finding a theme with a structure / layout is closest to the target is highly recommended. Having a solid understanding of HTML, CSS, and PHP will make the task a lot easier.
 |
| Header and Banner based on Theme Danland |
 |
| Header and Banner based on A&T Systems's Custom Theme |
Issues
Could not getting Drupal to use the custom templates defined. According to all documentation and examples, custom template needs to include the alias name. For example: If the custom template is for a node with an alias name "clients", then the name of the custom node template name should be "node--clients.tpl.php". It turns out that clean URL was not working properly on my Apple Mac laptop (URL contains "?q="). I tried a lot of the suggestions found at drupal.org (and elsewhere) and nothing was worked. Given the time constraint, my custom templates use the technical name instead of the alias.
 |
| Home Page based on Theme Danland |
 |
| Home Page based on A&T Systems' Custom Theme |
Lessons Learned
- Make sure the base web server is working properly before installing Drupal.
- Choose an appropriate initial administrator user id during the installation because in order to change this special user id, it is necessary to make a direct update in the database (table "users").
- May not want to use the latest and greatest release of Drupal. Research the support for all the modules and theme(s) to be implemented first. Then select the release of Drupal that best support those modules and theme(s).
- Make sure the base Drupal installation is working properly before customizing (theming) it.
- As a beginner, it's more important to select starter theme that is closest to the target structure / layout.
- Once a starter theme has been selected, content can be added to the system.
- To customize the contact form, create a "page--contact.tpl.php" template.
- Strip off as much unused HTML, CSS, PHP code as possible from based style sheets and templates.
- Remove as many unused modules as possible. This is to improve performance (especially during system startup).
- Remove as many unused themes as possible but don't remove the active administrative theme. This is to mainly reduce the installation size.
 |
| Contact Form based on Theme Danland |
 |
| Contact Form based on A&T Sytems's Custom Theme |