My Account Log in

4 options

Learning Joomla! 3 extension development / Tim Plummer.

EBSCOhost Academic eBook Collection (North America) Available online

View online

Ebook Central Academic Complete Available online

View online

Ebook Central College Complete Available online

View online

O'Reilly Online Learning: Academic/Public Library Edition Available online

View online
Format:
Book
Author/Creator:
Plummer, Tim.
Language:
English
Subjects (All):
Joomla! (Computer file).
Web sites--Authoring programs.
Web sites.
Physical Description:
vi, 439 p. : ill.
Edition:
3rd ed.
Place of Publication:
Birmingham, UK : Packt Pub., 2013.
Language Note:
English
System Details:
text file
Biography/History:
Plummer Timothy John: Tim Plummer is a Joomla! enthusiast and extension developer who has been building websites for over ten years, and specializing in Joomla! since 2008. Tim has developed and maintained several popular components, modules, and plugins, which are listed on the Joomla! Extension Directory, in addition to his day job in IT for a multinational manufacturer. Tim lives in Sydney, Australia, with his wife, Tamlyn, who runs her own design agency and two kids, Zane and Ava-Lily, who keep Tim very busy. At university Tim studied Engineering, and he has a Bachelor of Engineering in Telecommunications Engineering degree, however his passion in IT has been his career focus. Tim is very active in the Joomla! community; in January 2012 Tim took on the convener role for the Sydney Joomla! User Group (JUG), and he has been coorganizer for the annual Joomla! Day Sydney conference since 2011, taking on the coordinator role in 2013. Tim has run Joomla! development workshops at Joomla! Day conferences and various JUG groups throughout Australia, and is a regular presenter at the Sydney JUG.
Summary:
If you have ideas for additional Joomla 3! features, this book will allow you to realize them. It’s a complete practical guide to building and extending plugins, modules, and components. Ideal for professional developers and enthusiasts. Clear steps to create your own plugins, modules, and components for Joomla 3 Guides you through extending your components by allowing them to interact with modules and plugins Introduces you to packaging your extensions for distribution to other Joomla users Enables you to secure your extensions and avoid common vulnerabilities by gaining some white hat hacking experience In Detail Joomla 3 is the first of the major open source content management systems that was meant to be mobile friendly by default. Joomla uses object-oriented principles, is database agnostic, and has the best mix of functionality, extensibility, and user friendliness. Add to that the fact that Joomla is completely community driven, and you have a winning combination that is available to everyone, and is the perfect platform to build your own custom applications. "Learning Joomla! 3 Extension Development" is an integrated series of practical, hands-on tutorials that guide you through building and extending Joomla plugins, modules, and components. With Joomla having been downloaded well over 35 million times, there is a huge market for Joomla extensions, so you could potentially earn some extra cash in your spare time using your newly acquired Joomla extension development skills. We will start with developing simple plugins and modules, and then progress to more complex backend and frontend component development. Then we will try our hand at ethical hacking, so you will learn about common security vulnerabilities and what you can do to avoid them. After that we will look at how you can prepare your extensions for distribution and updates, as well as how you can extend your components with various plugins and modules. Finally, you will end up with a fully functioning package of extensions that you can use on your own site or share with others. If you want to build your own custom applications in Joomla, then "Learning Joomla! 3 Extension Development" will teach you everything you need to know in a practical, hands-on manner.
Contents:
Intro
Learning Joomla! 3 Extension Development
Table of Contents
Credits
About the Author
Acknowledgement
About the Reviewers
www.PacktPub.com
Support files, eBooks, discount offers and more
Why subscribe?
Free access for Packt account holders
Preface
What this book covers
What you need for this book
Who this book is for
Conventions
Reader feedback
Customer support
Downloading the example code
Errata
Piracy
Questions
1. Before you Start
Extension types and their uses
Plugins
Modules
Components
Languages
Templates
Libraries
Packages
Joomla! versions that your extensions should support
What's new in Joomla! 3
Licensing and GPL
What business model should I adopt?
Tools you need to develop the Joomla! extensions
Coding standards
Legacy MVC versus new MVC
Upgrading a Joomla! 2.5 component to make it Joomla! 3 compatible
To fork or not to fork?
Summary
2. Getting Started with Plugin Development
Plugin types
Plugin event triggers
Where do I start?
Creating the installation XML file
Creating the plugin PHP file
Zip it up and install your plugin
Adding the parameters to our plugin
Adding the language files
3. Getting Started with Module Development
Backend versus frontend modules
Backend modules' installation location
Frontend modules' installation location
Creating the module PHP file
Creating the view
Connecting to the database
Zip it up and install your module
Packaging your module for distribution
Backwards compatibility for Joomla! 2.5
Making changes to the installation XML file
Adding the CSS styles
Packaging for distribution.
Converting to the site module
Translating your module
Adding a help file
Template overrides
Watch out when updating
Alternative layouts
Making your module responsive
4. Getting Started with Component Development
Creating the component installation XML file
Creating a simple component
Creating the entry point
Creating the access XML file
Creating the config XML file
Setting up the database
Discover the extension
Creating the controllers
Creating the model for the list view
Creating the model for the edit view
Creating a form
The form XML file
JForm field types
Accesslevel
Cachehandler
Calendar
Captcha
Category
Checkbox
Checkboxes
Chromestyle
Color
Combo
Componentlayout
Contentlanguage
Contenttype
Databaseconnection
Editor
Email
File
Filelist
Folderlist
Groupedlist
Headertag
Helpsite
Hidden
Imagelist
Integer
Language
List
Media
Menu
Menuitem
Modulelayout
Moduleorder
Moduleposition
Moduletag
Password
Radio
Rules
Sessionhandler
Spacer
Sql
Tag
Tagnested
Tel
Templatestyle
Text
Textarea
Timezone
Url
User
Usergroup
Creating a view
The list view
The view.html.php file
The helper file
The view layout file
The edit view
Installer script
Zip it up and install your component
5. Backend Component Development - Part 1
Adding additional fields
Adding fields to the model
Category field
State field
Media field
Company field
Phone field
URL field
Description field
Language strings for new fields
Adding fields to the view
Alternative method for displaying fields in the view.
Adding fields to the database
Adding columns to your view
Adding simple columns
Click to sort by column
Status column
Ordering column
Toolbar buttons and component options
Component options
View filters and search
Sidebar filters
Changing delete to trash
Filters and search
6. Backend Component Development - Part 2
Pagination
Adding views and submenu items
The categories view
The preview view
Submenus
Access Control List (ACL)
Global permissions
Component permissions
Category permissions
Article permissions
Access level
Multi-database support
7. Frontend Component Development
Getting started on the frontend
Adding CSS
Adding sample images
Creating another view
Menu item parameters
Adding a category filter on our menu
Using component options
Width and height parameters
Translating your component
Updating data from the frontend
Creating the list view
Creating the edit form
Using ReCaptcha in your component
ReCaptcha without JForm
Using our click-to-call plugin with this component
Integrating a third-party comments extension
8. Security - Avoiding Common Vulnerabilities
Why you should care about security
Path disclosure
SQL injection
Local File Inclusion
Remote File Inclusion
Cross-site scripting
Cross-site Request Forgery
Some quick advice
9. Packing Everything Together
Creating a package
Setting up an update server
Managing database changes
Updating the PHP files
Getting listed on the JED
10. Extending your Component with Plugins and Modules
Creating a search plugin
Creating a smart search plugin
Creating a featured portfolio module
Adding tags to our component
Index.
Notes:
Includes index.
ISBN:
9781782168386
1782168389
OCLC:
855969622

The Penn Libraries is committed to describing library materials using current, accurate, and responsible language. If you discover outdated or inaccurate language, please fill out this feedback form to report it and suggest alternative language.

Find

Home Release notes

My Account

Shelf Request an item Bookmarks Fines and fees Settings

Guides

Using the Find catalog Using Articles+ Using your account