Victor Kane: Leveraging Drupal. Getting Your Site Done Right. (Wiley, 2009, 480 oldal) (-> Wiley $41.70, drupal.org, Amazon $26.38-)
Part I: Launching Your Website as a Software Project
Chapter 1: Keeping It Simple
Getting with the ‘‘Program’’
Starting with a Map for Business Vision and Scope
Who’s Going to Use the Site?
What Are They Going to Use It For?
What Needs to Be Done So They Can Do That?
When Should You Do That?
What Should It Look Like?
Making Sure You’re Getting What You Really Want
Turning Over the Helm
Information Architecture and an Agile Approach for the Rest of Us
The Example Used throughout This Book
Summary
Chapter 2: Taking Baby Steps
Creating an Initial Environment
Installing Drupal as a ‘‘One-Click’’ Pre-Installed Script
Installing Drupal Right
Whipping up the Initial Prototype
Implementing Roles
Implementing the Business Objects
Putting the First Role to Work (Initial Basic CMS Workflow...)
Summary
Chapter 3: Getting Organized
Reviewing the Initial Environment
Housekeeping the SVN Repository and Trac Instance
Main Directory Structure for Drupal
Main Directory Structure for the Repository
Initial Import of the Codebase into the Repository
Getting the Test Site up and Running
Building on Your Initial Prototype
Creating the literary_piece Content Type
Enabling Comments for the literary_piece Content Type
Creating Some Magazines and Books
Setting up Some Forums
Setting up Blogs
Completing the Primary Menu
Committing to the Repository and Tagging the Initial Prototype
Deploying to the Test Site
Getting Initial Feedback from the Client
Summary
Chapter 4: Getting up to Speed
Finishing the User Stories with the Client
Planning the Project
Doing It on the Dining Room Table
Doing It with Trac
Doing It
Committing, Deploying to Test, Testing, Tracking
Working on the Architectural Baseline
Getting the Team Organized and with the Program
Whom Do You Need?
‘‘Who You Gonna Call?’’
Elaboration Phase Cleanup
Summary
Part II: Getting Your 5.x Site Up-To-Date
Chapter 5: Finishing up the Elaboration Phase
Creating an Initial Environment
How Can I Easily Update the Drupal Release?
How Can I Update Modules Easily and Cleanly?
Whipping up the Initial Prototype
A Workshop Leader Can Manage Affinity Groups
A Workshop Leader Can Broadcast Messages to Members
What’s Left?
Working on the Architectural Baseline
Summary
Chapter 6: Pushing the Envelope
You’ve GotMail!
Using Your Own dev Affinity Group
Rolling Your Own Document Case and Index
Implementing the Document Case
Views-Sorting Tweak
Now, Where Were We?
Creating the Menus and Navigation Blocks
Browsing and Filtering Views of Literary Pieces
Example: The Beta Milestone
Allowing Filtered HTML Formatting in the Text Area
The Tagadelic Module
Creating the View Itself
Using Exposed Filters with the View
Using Categories and Tag Clouds for Project Management
Summary
Chapter 7: Becoming an Expert Drupal Themer
On to Theming
Dividing and Conquering Complexity
Dynamic Content
Specifying Structure
Specifying Style
Synching Your Work with the Repository and the Test Site
Weak and Strong Points in Separation of Concerns with Drupal
Standing on the Shoulders of Giants—Reusing the Zen Theme
Creating Subthemes
Applying the Subtheme to the Quotation Block
Summary
Part III: Upgrading Your Drupal Site
Chapter 8: Upgrading to Drupal 6
Recommended Reading
Upgrading—The Basic Process
Step 1: Shifting Everything over to a Test Site
Installing Using a Complete Backup from Your Hosting
Quick and Dirty on the Command Line
Step 2: Updating to the Latest Drupal 5.x Version Available
Updating to 5.x Steps
The Sad State of My Modules
Doing What I Did
Step 3: Testing Everything in the Upgraded 5.x Version
Step 4: Making aModule Inventory
Step 5: Switching to the Default Drupal Theme
Step 6: Disabling All Contributed Modules
Step 7: Updating the Drupal Core
Step 8a: Enabling the Modules
Step 8b: Upgrading the Theme
Step 9: Re-running All Site Acceptance Tests
Step 10: Deploying
Summary
Chapter 9: Upgrading to Drupal 6 Revisited
Shifting Everything over to a Test Site
Update Everything to the Latest Drupal 5.x Version
Module Inventory for the On-Line Literary Workshop
Preparatory Steps before the Point of No Return
Physically Replacing the Drupal 5 Contributed Modules
Update Drupal Core and Run the Update Script
Solving Problems with Organic Groups
Escaped PHP Showing up in My Groups View
Group Home Pages No Longer Showing the Group’s Posts
Getting the Old Views Back
Installing the Advanced Help Module
Upgrading Your Zen Theme to Drupal 6.x
The All-New Devel Module
Committing and Deploying to the Test Site
Summary
Part IV: Getting the Most out of Drupal 6.x
Chapter 10: Installing and Using Drupal 6 Fresh out of the Box
Step 1: Installing Drupal—Easier Than Ever Before
Downloading Drupal
Unzipping and Preparing Files for Upload
Uploading Files
Creating the Database and User for the Drupal Installation
Running the Drupal Install Wizard
Step 2: Designing and Building the Architecture
Application Scope and Domain
Creating Roles and Users
Installing and Enabling Modules
Making the Site Bilingual
Step 3: Creating the Business Objects
Step 4: Creating the Workflows
Implementing the Registration Workflow
Implementing the Client’s Workflow
Implementing the Translator Team Leader’s Workflow
Implementing the Translator’s Workflow
Summary
Chapter 11: Full Swing Agile Approach to Drupal Development
Honing the Project Tools
Adding an Acceptance Test Node
Make a View to List User Stories
Making the User List Available
Creating a Block Menu to Easily Access the New View
Implementing the User Stories
Workshop Member: Starting an Affinity Group with Its Own Forums
A Publisher Can Browse Public Content
A Publisher Can Select Content for Inclusion in a Publication
A Publisher Can Manage a Publication
A Publisher Can Broadcast a Call for Pieces to be Submitted for a Publication
Initial Theming
On-Line Blog Functionality
Implementing Service Links
Implementing the Author Info Block for Individual Blogs
Implementing Recent Posts Block
Implementing the Blogroll
Summary
Chapter 12: The jQuery Chapter
Anatomy of a Rich Internet Application Framework
The Basics
Getting at the DOM with CSS
Getting at the DOM with JavaScript
Anatomy of jQuery and Its Plug-Ins
jQuery Itself
Our onload() Example Implemented with jQuery
A Theming Example
Plug-Ins
Drupal 5.x Uses of jQuery and Other JavaScript Libraries
jstools
Prototype and script.aculo.us
Drupal 5.x UI
The jQuery Update Module
Advanced Drupal 5.x Examples
Reusing the Collapsible Widget
Dependent Autocomplete Fields
Making Use of Hierarchical Select (Drupal 5.x)
Validate, Validate, Validate!
Drupal 5.x Thread
Drupal 6 Thread: An Ajax-Validated Application Form
Drupal 6.x jQuery Breakthrough
An Example jQuery Ajax Alarm Module for Drupal 6.x
Summary
Part V: Drupal 7 and the Road Ahead
Chapter 13: From Drupal 6 to Drupal 7 and Beyond
What’s Changed in Drupal 6?
Killing the Webmaster
Understanding the Drupal Blueprint from Drupal 7 On
Making the Historic Decision to Postpone the Drupal 7 Code Freeze
Listing the Drupal 7 Features
Drupal 7 Architectural Style
Drupal 7 Database API
Going PHP 5
Considering Usability Concerns, Usability Sprints
Projecting Drupal 7 Contributed Module Battle Plans
Installing Drupal 7
Developing aMinimalist On-Line Literary Workshop in Drupal 7
Creating Literary Pieces
Summary
Chapter 14: Deploying your Application as a Drupal Installation Profile
Leveraging the Advanced Help Module
Analyzing the Components of the Views 2 Help System
Planning the On-Line Literary Workshop Help System
Implementing the On-Line Literary Workshop Help System
Installing Profiles! Kill theWebmaster!
What Are Installation Profiles?
Analyzing Drupalbin: An Example Installation Profile
Writing the On-Line LiteraryWorkshop Installation Profile
Starting with a Clean Drupal Installation Tarball
Copying in the Modules and the Theme
Abstracting out the Views into the litworkshop Module
Preparing the ./profile Directory
Caveats
Creating the Drupal Installation Tarball Itself
Summary
Chapter 15: Acquia Drupal as an Enterprise-Ready Alternative
Trying out Acquia Drupal
Step 1: Creating a Subscription
Step 2: Setting up Acquia Drupal
Step 3: Registering Your Website with the Acquia Network
Step 4: Getting Support
Exploring the New Acquia Drupal Website Installation
Installing Updates
Introducing the AcquiaMarina Theme
Checking out Mollom
Using the Acquia Partner Program
Summary