- Data, Nodes etc. At the base of the system is the collection of nodes—a pool of data. Don’t forget, before anything can be displayed on the site, it must be input as data.
- Modules. The next layer is where you should put the modules. Modules are plugins that are either part of the core or they are built by programmers who are probably members of the drupal community. Modules build on Drupal’s core functionality, allowing you to customise the fields on your node types, set up e-commerce, and more. There is a massive quantity of contributed modules that is growing everyday.
- Blocks and menus. The next layer is for blocks and menus. Blocks often provide the output from a module or can be created to display whatever you want, and then can be placed in various spots in your template. You can configure blocks to show certain information to certain users or user groups on a given page.
- User permissions. Next are user permissions. This is where you can state user types and what the user types are allowed to see. Permissions are also defined here.
- Templates. Next you will find the site theme or the skin. The skin is built mainly out of XHTML and CSS, with some PHP thrown in to sort out the location of the Drupal-generated content. When you set up a theme you will also be able to override the standard function in the modules you are using to provide greater or complete control over the output of the given modules. Don’t forget, templates can also be assigned ad hoc based on the given user permissions.