Search icon CANCEL
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Conferences
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
Learning Joomla! 3 Extension Development

You're reading from   Learning Joomla! 3 Extension Development 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.

Arrow left icon
Product type Paperback
Published in Jul 2013
Publisher Packt
ISBN-13 9781782168379
Length 458 pages
Edition 3rd Edition
Languages
Tools
Concepts
Arrow right icon
Author (1):
Arrow left icon
Timothy John Plummer Timothy John Plummer
Author Profile Icon Timothy John Plummer
Timothy John Plummer
Arrow right icon
View More author details
Toc

Table of Contents (18) Chapters Close

Learning Joomla! 3 Extension Development
Credits
About the Author
Acknowledgement
About the Reviewers
www.PacktPub.com
Preface
1. Before you Start 2. Getting Started with Plugin Development FREE CHAPTER 3. Getting Started with Module Development 4. Getting Started with Component Development 5. Backend Component Development – Part 1 6. Backend Component Development – Part 2 7. Frontend Component Development 8. Security – Avoiding Common Vulnerabilities 9. Packing Everything Together 10. Extending your Component with Plugins and Modules Index

Licensing and GPL


When developing extensions, it is important to consider the license that you will release the software under. Joomla! is licensed under GNU GPL, which is a popular open source license (http://www.gnu.org/licenses/gpl.html). The GPL license delivers the "four freedoms", that is, to use, study, modify, and distribute software for any purpose.

The GNU GPL is often misunderstood, many people don't understand how something that is free and open source can actually cost money since Joomla! is GPL and doesn't cost anything. You may have heard the explanation for "free" as in freedom as opposed to "free" as in free beer. The GPL allows you to charge for your software if you wish, providing that you make available full unencrypted source code. Of course you can choose to give away your extensions for free if you want to, it is entirely up to you.

GPL gives the user the freedom to make whatever changes they like to the software and it even allows them to distribute the software to other people. The GPL also allows people to fork your extension and potentially even charge other people for this modified version. Hang on a second, why would I want to make my commercial extension GPL if people are just going to give it away or fork it? Well, the simple answer is that if you want your extension to be listed on the Joomla! Extension Directory (JED), then you must license your extension under GPL. Many extension developers receive over 60 percent of their traffic from the JED, so it is quite an incentive. Another major benefit of using the GPL license is that it clearly states that the software has no warranty which can protect the developer.

The GPL does not allow you to sell per domain copies of the software once someone has purchased or is given a copy; they can use it on as many websites as they like. Many developers get round this by charging a per site support fee, and some only provide updates for the purchased number of domains. There is nothing stopping someone purchasing a single site support and then using this same software on multiple domains.

You cannot use encoding or encryption such as ionCube, which many developers used in the past prior to the JED enforcing GPL. In the early days of Joomla!, there were no licensing restrictions and Joomla! extension developers used a wide range of open source and commercial proprietary licenses for their extensions. From July 1, 2009, the JED only listed extensions licensed under the GNU GPL, and at the time of the change, there were a lot of extension developers resistant to it, but more recently developers are seeing the advantages of GPL and are embracing it.

The legal opinion received by Open Source Matters (OSM) is that the PHP code in an extension of Joomla! is considered derivative work and thus must be licensed by GPL. This is why the JED insists on GPL licensing. The requirement for GPL licensing does not apply to JavaScript code, CSS, LESS, images, and documentation.

lock icon The rest of the chapter is locked
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at €18.99/month. Cancel anytime