Table of Contents
Preface
Chapter 1: CMS Core Design
Chapter 2: User Management
Chapter 3: Page Management – Part One
Chapter 4: Page Management – Part Two
Chapter 5: Design Templates – Part One
Chapter 6: Design Templates – Part Two
Chapter 7: Plugins
Chapter 8: Forms Plugin
Chapter 9: Image Gallery Plugin
Chapter 10: Panels and Widgets – Part One
Chapter 11: Panels and Widgets – Part Two
Chapter 12: Building an Installer
Index
- Chapter 1: CMS Core Design
- The CMS's private and public areas
- The front-end
- The admin area
- Plugins
- Files and databases
- Directory structure
- Database structure
- The configuration file
- Hello World
- Setup
- Front controller
- Reading page data from the database
- Summary
- Chapter 2: User Management
- Types of users
- Roles
- Database tables
- Admin area login page
- Logging in
- Logging out
- Forgotten passwords
- User management
- Deleting a user
- Creating or editing a user
- Summary
- Chapter 3: Page Management – Part One
- How pages work in a CMS
- Listing pages in the admin area
- Hierarchical viewing of pages
- Moving and rearranging pages
- Administration of pages
- Filling the parent selectbox asynchronously
- Summary
- Chapter 4: Page Management – Part Two
- Dates
- Saving the page
- Creating new top-level pages
- Creating new sub-pages
- Deleting pages
- Rich-text editing using CKeditor
- File management using KFM
- Summary
- Chapter 5: Design Templates – Part One
- How do themes and templates work?
- File layout of a theme
- Setting up Smarty
- Front-end navigation menu
- Summary
- Chapter 6: Design Templates – Part Two
- Adding jQuery to the menu
- Preparing the Filament Group Menu
- Integrating the menu
- Choosing a theme in the administration area
- Choosing a page template in the administration area
- Running Smarty on page content
- Summary
- Chapter 7: Plugins
- What are plugins?
- Events in the CMS
- Page types
- Admin sections
- Page admin form additions
- Example plugin configuration
- Enabling plugins
- Handling upgrades and database tables
- Custom admin area menu
- Adding an event to the CMS
- Adding tabs to the page admin
- Summary
- Chapter 8: Forms Plugin
- How it will work
- The plugin config
- Page types in the admin
- Adding custom content forms to the page admin
- Defining the form fields
- Showing the form on the front-end
- Handling the submission of the form
- Sending by e-mail
- Saving in the database
- Exporting saved data
- Summary
- Chapter 9: Image Gallery Plugin
- Plugin configuration
- Page Admin tabs
- Initial settings
- Uploading the Images
- Handling the uploads
- Adding a kfmget mod_rewrite rule
- Deleting images
- Front-end gallery display
- Settings tab
- Grid-based gallery
- Summary
- Chapter 10: Panels and Widgets – Part One
- Creating the panel plugin
- Registering a panel
- The panel admin area
- Showing panels
- Creating the content snippet plugin
- Adding widgets to panels
- Showing widgets
- Dragging widgets into panels
- Saving panel contents
- Showing panels on the front-end
- Summary
- Chapter 11: Panels and Widgets – Part Two
- Widget forms
- Saving the snippet content
- Renaming widgets
- Widget header visibility
- Disabling widgets
- Disabling a panel
- Deleting a panel
- Panel page visibility – admin area code
- Panel page visibility – front-end code
- Widget page visibility
- Summary
- Chapter 12: Building an Installer
- Installing a virtual machine
- Installing VirtualBox
- Installing the virtual machine
- Installing the CMS in the VM
- Creating the installer application
- Core system changes
- The installer
- Checking for missing features
- Adding the configuration details
- Summary