Book Image

Professional Plone 4 Development

Book Image

Professional Plone 4 Development

Overview of this book

A 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 https://www.packtpub.com/Professional-Plone-web-applications-CMS/book 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: First, you will be introduced to Plone and the case study, and learn how to set up a development environment. The second section covers basic customization, including theming a Plone site using Diazo. The third section focuses on custom development – building new content types and user interfaces, customizing security and integrating with external databases. The final chapters cover deployment and performance optimization.
Table of Contents (6 chapters)

What this book covers

This book is divided into four sections:

  1. First, we will introduce 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 the external databases.
  4. The final chapters cover deployment and performance optimization.

Let us take a look at each chapter in a bit more detail:

Chapter 1, Plone in Context, discusses what Plone is and when it may be an appropriate choice, and introduces the Plone community.

Chapter 2, Introduction to the Case Study, introduces the case study that will be used as the basis for the examples throughout the book.

Chapter 3, The Development Environment, discusses how to set up a productive development environment with tools for source code management, debugging, and more.

Chapter 4, Basics of Customization, discusses the ways in which the Zope application server infrastructure allows us to customize various aspects of Plone.

Chapter 5, Developing a Site Strategy, will start the customization of Plone to meet the requirements of our case study by creating a "policy package" to contain configuration and new code.

Chapter 6, Security and Workflow, discusses Zope's security model and shows how to create a custom workflow and permission scheme for our application.

Chapter 7, Using Add-ons, shows how to safely install Plone add-ons.

Chapter 8, Creating a Custom Theme, uses the Diazo theming engine to turn an HTML mock-up of the final site into a fully functional Plone theme.

Chapter 9, Nine Core Concepts of Zope Programming, takes a break from the case study to allow us to go into detail of the core concepts that underpin all Zope programming.

Chapter 10, Custom Content Types, uses the Dexterity framework to model the case study's specific data requirements as new content types.

Chapter 11, Standalone Views and Forms, shows how to render pages that are not the views of content types, and use the z3c.form framework to generate forms automatically from declarative schemata.

Chapter 12, Relational Databases, shows how to query and manipulate an external relational database from within Plone.

Chapter 13, Users and their Permissions, shows how to manage personal information and create more advanced security schemes. We will also create a simple plugin to allow users to log into a Plone site using their Facebook account.

Chapter 14, Dynamic User Interfaces with jQuery, shows how to use jQuery, the popular JavaScript framework, to create dynamic user interfaces and manage client-side interactions.

Chapter 15, Summary and Potential Enhancements, summarizes the work that has gone into the case study and points to some potential future enhancements.

Chapter 16, Zope on the Server, discusses the differences between a Zope instance configured for development and ones configured for use on a server.

Chapter 17 , Setting up a Production Server, discusses the services that are typically deployed alongside Zope, including web servers, caching proxies, and load balancers.

Chapter 18, Authenticating with LDAP and Active Directory, shows how to configure authentication against an organization's existing LDAP or Active Directory repository.

Chapter 19, Looking to the Future, briefly considers migrations, before bringing the book to a close.