Professional Plone 4 Development

Build robust, content-centric web applications with Plone 4.

Professional Plone 4 Development

Starting
Martin Aspeli

Build robust, content-centric web applications with Plone 4.
$35.99
$59.99
RRP $35.99
RRP $59.99
eBook
Print + eBook
$12.99 p/month

Get Access

Get Unlimited Access to every Packt eBook and Video course

Enjoy full and instant access to over 3000 books and videos – you’ll find everything you need to stay ahead of the curve and make sure you can always get the job done.

Book Details

ISBN 139781849514422
Paperback516 pages

About This Book

  • The very first book on the newly released Plone version 4.
  • Learn how - and when - the professionals use Plone
  • Master the latest Plone technologies
  • Put theory into practice with a realistic case study built from chapter to chapter.
  • Written by Martin Aspeli, one of the Plone project’s most prolific core developers and responsible for several R&D efforts relating to Plone 4.0; and with a Foreword by Eric Steele, the Plone Release Manager.
  • Bonus chapter: Custom Content Types with Archetypes
  • Bonus chapter: KSS

Who This Book Is For

This book assumes that the reader is familiar with Plone from the point of view of an administrator or power user, has a basic understanding of web application development, and is comfortable with the Python programming language.

Table of Contents

Chapter 1: Plone in Context
A brief history of Plone
Plone-the-application and Plone-the-framework
Additional considerations when deciding on Plone
The Plone Community, and why you belong there
Summary
Chapter 2: Introduction to the Case Study
Background and high-level requirements
Modeling and mockups
Information architecture
Running the project
Summary
Chapter 3: The Development Environment
Installers
Glossary of terms
Prerequisites
A minimal buildout
Buildout basics
The development buildout
Learning to help yourself
Summary
Chapter 4: Basics of Customization
Persistent settings and the ZODB
Using GenericSetup for configuration
Acquisition and skin layers
Overriding Component Architecture components
Customization best practices
Summary
Chapter 5: Developing a Site Strategy
Creating a policy package
Updating the buildout
Creating an extension profile
Activating the package
Rebuildout, restart, reapply?
Summary
Chapter 6: Security and Workflow
Security primitives
Keeping control with workflow
Installing a custom workflow
Protected and trusted code
Summary
Chapter 7: Using Add-ons
Finding and evaluating add-ons
Playing it safe
Installing an add-on
Summary
Chapter 8: Creating a Custom Theme
Background
Creating a Diazo theme
Variations on the theming approach
Overriding visual elements
Summary
Chapter 9: Nine Core Concepts of Zope Programming
About the examples
Object publishing and traversal
Persistence in the ZODB
Searching for objects using the catalog
Describing functionality with interfaces
Component configuration with ZCML or Grokkers
Component registries using utilities
Modelling component aspects with adapters
Views and other presentation components
Synchronous events
Summary
Chapter 10: Custom Content Types
Content-centric design
Choosing a content type framework
Creating a distribution
Using the Dexterity framework
Installation and configuration in the policy package
Using the schema extender
Using portlets
Summary
Chapter 11: Standalone Views and Forms
Pages without a specific context
Writing custom forms
Generating forms automatically
Creating a control panel view
The form controller tool
Writing new viewlets
Global template variables and helper views
Functional testing of views
Summary
Chapter 12: Relational Databases
Relational databases versus the ZODB
Modeling screenings and reservations
Setting up the database
Database connectivity in Zope
Managing database connections
Working with the database
Adding the user interface
Summary
Chapter 13: Users and their Permissions
Defining a membership policy
Collaborative workspaces
The Pluggable Authentication Service
Summary
Chapter 14: Dynamic User Interfaces with jQuery
KSS and jQuery in Plone 4
Managing JavaScript resources
Overlays
Background requests and DOM manipulation
Summary
Chapter 15: Summary and Potential Enhancements
What we have achieved
Additional functionality
Summary
Chapter 16: Zope on the Server
Deployment checklist
Scaling Zope
A deployment buildout using RelStorage
Moving code, configuration, and data to a server
Managing Zope processes
Backups and maintenance
Summary
Chapter 17: Setting up a Production Server
Server components
Hardware and operating system concerns
Caching and optimization
Testing and benchmarking
Summary
Chapter 18: Authenticating with LDAP or Active Directory
LDAP and Active Directory
Connecting Plone to an LDAP repository
Summary
Chapter 19: Looking to the Future
Making future releases
What we have achieved
Where to go next
Summary

What You Will Learn

  • Setting up a productive development environment
  • Basics of Plone customisation and extension
  • Theming a Plone site using Diazo and plone.app.theming
  • Core concepts that underpin the workings of Zope and Plone
  • Creating custom content types using Dexterity
  • Building views and forms, including the use of z3c.form
  • Integrating with relational databases using SQLAlchemy
  • Customising the management of users and groups with PAS
  • Creating rich user interfaces with jQuery and jQuery Tools
  • Deploying and optimizing a production-ready Plone server
  • Integrating with LDAP and Active Directory

 

In Detail

Aspeli’s years of experience in Plone development and project management are combined with an approachable writing style to create an engaging and highly-informative guide to working with Plone. Professional Plone 4 Development stands as an excellent resource for developers of all levels.

- Eric Steele, Plone Release Manager

Plone is a web content management system that features among the top 2% of open source projects and is used by more than 300 solution providers in 57 countries. Its powerful workflow system, outstanding security track record, friendly user interface, elegant development model and vibrant community makes Plone a popular choice for building content-centric applications. By customising and extending the base platform, integrators can build unique solutions tailored to specific projects quickly and easily.

If you want to create your own web applications and advanced websites using Plone 4, Professional Plone 4 Development is the book you need.

The first edition of this book remains one of the most widely read and recommended Plone books. This second edition is completely revised and up-to-date for Plone 4.1, covering new topics such as Dexterity, Diazo, jQuery and z3c.form, as well as improved ways of working with existing technologies such as Buildout, SQLAlchemy and the Pluggable Authentication Service. It retains the writing style and comprehensive approach that made the first edition so popular.

Built around a realistic case study, Professional Plone 4 Development will take you from an understanding of Plone’s central concepts, through basic customization, theming, and custom development, to deployment and optimization.

The book is divided into four sections:

  1. First, you will be introduced to Plone and the case study, and learn how to set up a development environment.
  2. The second section covers basic customization, including theming a Plone site using Diazo.
  3. The third section focuses on custom development – building new content types and user interfaces, customizing security and integrating with external databases.
  4. The final chapters cover deployment and performance optimization.

Authors

Table of Contents

Chapter 1: Plone in Context
A brief history of Plone
Plone-the-application and Plone-the-framework
Additional considerations when deciding on Plone
The Plone Community, and why you belong there
Summary
Chapter 2: Introduction to the Case Study
Background and high-level requirements
Modeling and mockups
Information architecture
Running the project
Summary
Chapter 3: The Development Environment
Installers
Glossary of terms
Prerequisites
A minimal buildout
Buildout basics
The development buildout
Learning to help yourself
Summary
Chapter 4: Basics of Customization
Persistent settings and the ZODB
Using GenericSetup for configuration
Acquisition and skin layers
Overriding Component Architecture components
Customization best practices
Summary
Chapter 5: Developing a Site Strategy
Creating a policy package
Updating the buildout
Creating an extension profile
Activating the package
Rebuildout, restart, reapply?
Summary
Chapter 6: Security and Workflow
Security primitives
Keeping control with workflow
Installing a custom workflow
Protected and trusted code
Summary
Chapter 7: Using Add-ons
Finding and evaluating add-ons
Playing it safe
Installing an add-on
Summary
Chapter 8: Creating a Custom Theme
Background
Creating a Diazo theme
Variations on the theming approach
Overriding visual elements
Summary
Chapter 9: Nine Core Concepts of Zope Programming
About the examples
Object publishing and traversal
Persistence in the ZODB
Searching for objects using the catalog
Describing functionality with interfaces
Component configuration with ZCML or Grokkers
Component registries using utilities
Modelling component aspects with adapters
Views and other presentation components
Synchronous events
Summary
Chapter 10: Custom Content Types
Content-centric design
Choosing a content type framework
Creating a distribution
Using the Dexterity framework
Installation and configuration in the policy package
Using the schema extender
Using portlets
Summary
Chapter 11: Standalone Views and Forms
Pages without a specific context
Writing custom forms
Generating forms automatically
Creating a control panel view
The form controller tool
Writing new viewlets
Global template variables and helper views
Functional testing of views
Summary
Chapter 12: Relational Databases
Relational databases versus the ZODB
Modeling screenings and reservations
Setting up the database
Database connectivity in Zope
Managing database connections
Working with the database
Adding the user interface
Summary
Chapter 13: Users and their Permissions
Defining a membership policy
Collaborative workspaces
The Pluggable Authentication Service
Summary
Chapter 14: Dynamic User Interfaces with jQuery
KSS and jQuery in Plone 4
Managing JavaScript resources
Overlays
Background requests and DOM manipulation
Summary
Chapter 15: Summary and Potential Enhancements
What we have achieved
Additional functionality
Summary
Chapter 16: Zope on the Server
Deployment checklist
Scaling Zope
A deployment buildout using RelStorage
Moving code, configuration, and data to a server
Managing Zope processes
Backups and maintenance
Summary
Chapter 17: Setting up a Production Server
Server components
Hardware and operating system concerns
Caching and optimization
Testing and benchmarking
Summary
Chapter 18: Authenticating with LDAP or Active Directory
LDAP and Active Directory
Connecting Plone to an LDAP repository
Summary
Chapter 19: Looking to the Future
Making future releases
What we have achieved
Where to go next
Summary

Book Details

ISBN 139781849514422
Paperback516 pages
Read More