Free Sample
+ Collection

Mastering Joomla! 1.5 Extension and Framework Development Second Edition

Mastering
Chuck Lanham, James Kennard

Extend the power of Joomla! by adding components, modules, plugins, and other extensions
$29.99
$49.99
RRP $29.99
RRP $49.99
eBook
Print + eBook

Want this title & more?

$21.99 p/month

Subscribe to PacktLib

Enjoy full and instant access to over 2000 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 139781849510523
Paperback560 pages

About This Book

  • In-depth guide to programming Joomla! 1.5 Framework
  • Design and build secure and robust components, modules, and plugins
  • Customize the document properties, add multilingual capabilities, and provide an interactive user experience
  • Includes a comprehensive reference to the major areas of Joomla!’s common classes, variables, and constants crucial for creating Joomla! Extensions.

Who This Book Is For

PHP developers who want to understand how Joomla! Works, with a view to advanced customization or extension development, and who want to learn how to work with the Joomla! Framework.

Table of Contents

Chapter 1: Introduction to Joomla!
Overview
Joomla! 1.5 Framework
Extension types and their uses
Extension Manager
Requirements
Joomla Extension Directory (JED)
Development tools
Summary
Chapter 2: Getting Started
A quick object lesson
The Joomla! process
Directory structure
Summary
Chapter 3: The Database
The core database
Database naming conventions
Additional points to consider
Using the database
Summary
Chapter 4: Extension Design
Supporting classes
Helpers
Using and building getInstance() methods
Using the registry
The user
The session
The browser
Assets
Extension structure
Extension packaging
Summary
Chapter 5: Component Design
Component design
Building the MVC component
Dealing with component configuration
Help files
Routing
Summary
Chapter 6: Module Design
First steps
Module settings (parameters)
Helpers
Layouts (templates)
Translating
Summary
Chapter 7: Plugin Design
Events
Listeners
Plugin groups
Loading plugins
Using plugins as libraries (in lieu of library extensions)
Translating plugins
Dealing with plugin settings (parameters)
Summary
Chapter 8: Rendering Output
Improving components
Component backend
Itemized data
Summary
Chapter 9: Customizing the Page
Application message queue
Redirecting the browser
Using menu item parameters
Modifying the document
Translating
Using JavaScript effects
Summary
Chapter 10: APIs and Web Services
XML
AJAX
LDAP
Email
File transfer protocol
Web services
Building a web service (XML-RPC plugin)
Summary
Chapter 11: Error Handling and Security
Errors, warnings, and notices
Dealing with CGI request data
Access control
Attacks
Summary
Chapter 12: Utilities and Useful Classes
Dates
File system
Arrays
Trees
Log files
Summary

What You Will Learn

  • Understand the structure and design of the Joomla! 1.5 framework and how it operates at its core to develop efficient and well-designed extensions for Joomla! 
  • Extend the database conventions for the database schema and common fields
  • Access and manipulate the database with the help of JDatabase and JTable classes
  • Design extensions that work within the Joomla! structure
  • Incorporate User, Session, Request, and Browser classes in extensions
  • Organize your code with the Model-View-Controller (MVC) design pattern
  • Build your own components to manage and present a specific set of data
  • Enhance our component by creating a module, which will add new functionality to our frontend
  • Modify your system’s functionality without the need to alter existing code
  • Discover how to add pagination, ordering, filtering, and searching to make your extensions more user-friendly, and increase the chances of having successfully created a commercially winning or freely available extension
  • Improve your extensions by customizing the document properties, adding multilingual capabilities, and providing an interactive user experience
  • Access remote third-party services from an application with Joomla!’s API (Application Programming Interface) and web service
  • Master the techniques of error handling and access control to prevent malicious attacks on your systems

In Detail

Joomla! is one of the world’s top open source content management systems, which enables you to build websites and powerful online applications. Out of the box, Joomla! does a great job of managing the content needed to enhance the functionality of your website. But for many people, the true power of Joomla! lies in its application framework that makes it possible for thousands of developers around the world to create powerful add-ons and extensions.

This book will guide you through the complexities of implementing add-ons, components, modules, and plugins in Joomla! 1.5. If you feel that you’ve mastered the basics of creating Joomla! extensions, then this book will take you to the next level. Packed with expert advice on all aspects of programming with Joomla!, this book is an invaluable reference guide you will turn to again and again for your Joomla! development tasks.

The book starts by explaining the structure and design of the Joomla! Framework. Then we move on to extending and storing data in standard fields and dealing with multilingual requirements. Further, you will discover best practices, design, and coding methods for Joomla! components, modules, plugins, and other extensions. Along the way, you will actually design and create a component, module, and plugin that work together to add functionality to the Joomla! framework.

You will also learn about customizing the page output using JavaScript effects, making use of Web Services from within Joomla! and ensuring that your code is secure and error-free. You will discover how to easily create sophisticated extensions that are robust, user-friendly, and professional by taking advantage of the many libraries and utilities provided by the Joomla! framework. A comprehensive, up-to-date reference to the Joomla! Framework API is also included in the book.

Finally, we will discuss advanced methods for rendering your extensions more robust, secure, and professional.

Authors

Read More