- Full Description
Widely praised for its indepth coverage of Drupal internals, bestselling Pro 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.
What youll learn
- Find out how to create your own modules, develop your own themes, and produce your own filters.
- Learn the inner workings of each key part of Drupal, including user management, sessions, the node system, caching, and the various APIs available to you.
- Discover how to optimize your Drupal installation to perform well under highload situations.
- Gain the knowledge needed to secure your Drupal installation and other best practice techniques.
- Learn to integrate Ajax into and internationalize your Drupal web site.
Who this book is for
Web developers maintaining and creating sites with Drupal. It is assumed that you already know the basics of Drupal and are able to install and bring up a basic installation. This book takes you deeper into the internals of Drupal and teaches how to tweak and modify it in order to create that perfect web site. Simply put, if you are working with Drupal, you need Pro Drupal Development, Second Edition.
- Source Code/Downloads
Please Login to submit errata.On page 16:variable_get('annotate_node_types', array('story'))
And the last sentence in the last paragraph should be:
We're going to allow annotation of page node types by default.
This is because on P15 & P17, the context states that the default value should be 'page', not 'story'.
On page 248:
In the function formwizard_multiform(), $step is initialized to 0 if $form_state is not set. It should be initialized to 1, otherwise the code runs incorrectly.
On page 306:
Typo in Drupal variable name legacysearch_cron_last in function legacysearch_update_index():
$last_change = variable_get('legacysearch_cron_last_change', 0);
should be (accordingly to the other functions of the example module):
$last_change = variable_get('legacysearch_cron_last', 0);
This occurs also in legacysearch.module file (at line 22) in the source code package.
Idem (at different position in code) in Pro Drupal Development 7 (3rd ed.).