: John VanDyk
: Pro Drupal Development
: Apress
: 9781430209904
: 2
: CHF 40.90
:
: Allgemeines, Lexika
: English
: 704
: Wasserzeichen/DRM
: PC/MAC/eReader/Tablet
: PDF

Widely praised for its in-depth coverage of Drupal internals, bestsellingPro Drupal Development has been updated for Drupal 6 in this edition, and provides are even more tricks of the trade to help you further yourself as a professional Drupal developer.

Assuming you already know how to install and bring a standard installation online,John K. VanDyk gives you everything else you need to customize your Drupal installation however you see fit.Pro Drupal Development, Second Edition delves deep into Drupal internals, showing you how to take full advantage of its powerful architecture.



John K. VanDyk has been a Drupal developer since 2004. In 2005, he organized the first Drupal conference in Antwerp, Belgium, with Drupal founder Dries Buytaert. John has contributed several modules to Drupal including the actions, workflow, publish, subscribe, and pubcookie modules and has been instrumental in the design of Drupal's Content Construction Kit. John's day job is as an entomology professor and systems analyst at Iowa State University, where he teaches undergraduate courses about insects. In his spare time, when not hacking on Drupal, John enjoys squash hunting and raising children.
Contents at a Glance5
Contents7
Foreword25
About the Author26
About the Technical Reviewer27
Acknowledgments28
Introduction29
How Drupal Works30
What Is Drupal?30
Technology Stack30
Core31
Administrative Interface32
Modules32
Hooks33
Themes34
Nodes34
Blocks35
File Layout35
Serving a Request37
Summary40
Writing a Module41
Creating the Files41
Implementing a Hook43
Adding Module- Specific Settings44
Adding the Data Entry Form47
Defining Your Own Administration Section55
Presenting a Settings Form to the User57
Validating User- Submitted Settings59
Storing Settings60
Further Steps62
Summary62
Hooks, Actions, and Triggers63
Understanding Events and Triggers63
Understanding Actions65
Using the Context in Actions75
Examining the Context79
How Actions Are Stored80
Calling an Action Directly with actions_ do()81
Defining Your Own Triggers with hook_ hook_ info()82
Adding Triggers to Existing Hooks84
Summary86
The Menu System87
Callback Mapping87
Menu Nesting97
Access Control98
Title Localization and Customization99
Wildcards in Menu Items103
Altering Menu Items from Other Modules108
Altering Menu Links from Other Modules110
Kinds of Menu Items110
Common Tasks111
Using menu. module115
Common Mistakes115
Summary116
Working with Databases117
Defining Database Parameters117
Understanding the Database Abstraction Layer117
Connecting to the Database119
Performing Simple Queries120
Retrieving Query Results122
The Schema API123
Inserts and Updates with drupal_ write_ record()134
Exposing Queries to Other Modules with hook_ db_ rewrite_ sql()136
Connecting to Multiple Databases Within Drupal139
Using a Temporary Table140
Writing Your Own Database Driver140
Summary141
Working with Users143
The $ user Object143
Introduction to hook_ user()146
The User Registration Process149
The Login Process152
External Login157
Summary164
Working with Nodes165
So What Exactly Is a Node?165
Not Everything Is a Node168
Creating a Node Module168
How Nodes Are Stored185
Creating a Node Type with CCK186
Restricting Access to Nodes187
Summary191
The Theme System192
Theme System Components192
Installing a Theme195
Building a PHPTemplate Theme196
Understanding Template Files203
Advanced Drupal Theming221
Summary228
Working with Blocks229
What Is a Block?229
Block Configuration Options230
Block Placement232
Defining a Block232
Building a Block236
Enabling a Block When a Module Is Installed244
Block Visibility Examples244
Summary245
The Form API246
Understanding Form Processing2