If you're a web programmer, your experiences have taught you certain lessons--and only some of them apply well to Drupal. Drupal has its own set of programming principles that require a different approach, and many programmers make mistakes when relying on skills they've used for other projects. This book will show you which programming techniques you can use--and which you should avoid--when building web applications with this popular content management framework.
Updated to cover both Drupal 7 and Drupal 8, the guidelines in this book demonstrate which programming practices conform to the "Drupal way" and which don't. The book also serves as an excellent guide for Drupal 7 programmers looking to make the transition to Drupal 8.
- Get an overview of Drupal, including Drupal core and add-on modules and themes
- Learn Drupal's basic programming principles, such as the ability to customize behavior and output with hooks
- Compare Drupal 7 and Drupal 8 programming methods, APIs, and concepts
- Discover common Drupal programming mistakes--and why hacking is one of them
- Explore specific areas where you can put your programming skills to work
- Learn about the new object-oriented Drupal 8 API, including plugins and services
Jennifer Hodgdon wrote her first computer program in 1982, and has been a professional software developer since 1994, using a wide variety of programming languages (FORTRAN, C, Java, PHP, JavaScript, ...). She started doing PHP/MySQL web programming professionally around 2002, and set up her first Drupal web site in 2007. Soon after that, she started contributing volunteer time to the Drupal open-source project and the Seattle Drupal User Group: organizing meet-ups and conferences, serving as the co-leader and then the leader of the Drupal Documentation Team in 2011-2012, leading workshops, and making conference presentations. She is currently a freelance Drupal site builder and module programmer, the volunteer maintainer of several Drupal modules, the co-organizer of the Spokane (WA) Drupal User Group, and the Drupal Core maintainer/committer for API documentation and coding standards.