Book Image

Drupal 7 First Look

Book Image

Drupal 7 First Look

Overview of this book

Drupal 7 contains features for which site administrators have been clamoring for years, including support for fields, an improved administration interface, better database support, improved theming, and more. You could of course make a laborious search on sites, blogs, and many online tutorials that would promise to update you about every new feature, but there's an even better way to know all about Drupal 7's new features: Drupal 7 First Look is the first and only book that covers all of the fantastic new features in Drupal 7 in depth and covers the process of upgrading your Drupal 6 site to Drupal 7. If you've used Drupal 6 and want to use Drupal 7, you need this book.Drupal 7 First Look takes an in-depth look into all of the major new features in Drupal 7 so you can quickly take full advantage of Drupal 7. It also assists you in upgrading your site to Drupal 7. Some of the new features in Drupal 7 include: Fields API, based on Drupal 6 CCK, which allows you to easily build your own content types Improved user interface for administering your website Built-in support for working with images and files Improved security for the site and users of the site Completely rewritten database layer DBTNG to make working with the database easier and more secure. Improved API for custom module development and user interface theming
Table of Contents (13 chapters)
Drupal 7 First Look
Credits
About the Author
About the Reviewer
Preface
Index

Theme API changes


Now that we have gone through the changes in the major Drupal templates and covered the major changes related to JavaScript and CSS, let's look into the changes to the actual theme API. These functions are implemented within your theme's template.php file and give you immense control over the presentation of elements within your site.

Signature changes

The first thing you will notice when you try to upgrade your Drupal 6 theme to Drupal 7 is that all functions now take a $variables array rather than a list of parameters in the method signature. This allows for consistent pre-processing of variables and makes coding easier. Unless noted otherwise later in this chapter, all parameters that used to be passed to a theme function are now available within the variables array using the original parameter name. For example, in Drupal 6, the theme_date method was implemented as follows:

function theme_date($element) {
  return theme('form_element', $element, 
    '<div class="container...