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.
Overview
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, Third Edition" 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.
What you will learn from this book
Approach
A practical guide with step-by-step examples that build on each other so you can learn by doing and get hands-on knowledge about creating your plugins, modules, and components in Joomla.
Who this book is written for
"Learning Joomla! 3 Extension Development" is for developers who want to create their own Joomla extensions. It is assumed you will have some basic PHP, HTML, and CSS knowledge, but you don’t need any prior Joomla programming experience. This book will also be useful to people who just want to make minor customizations to existing Joomla extensions and build on the work of others in the open source spirit.
Le informazioni nella sezione "Riassunto" possono far riferimento a edizioni diverse di questo titolo.
Tim Plummer
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.
Chapter 1: Before you Start
Chapter 2: Getting Started with Plugin Development
Chapter 3: Getting Started with Module Development
Chapter 4: Getting Started with Component Development
Chapter 5: Backend Component Development – Part 1
Chapter 6: Backend Component Development – Part 2
Chapter 7: Frontend Component Development
Chapter 8: Security – Avoiding Common Vulnerabilities
Chapter 9: Packing Everything Together
Chapter 10: Extending your Component with Plugins and Modules
Index
Preface
Up
Chapter 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
Up
Chapter 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
Summary
Up
Chapter 3: Getting Started with Module Development
Where do I start?
Backend versus frontend modules
Backend modules' installation location
Frontend modules' installation location
Creating the installation XML file
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
Summary
Up
Chapter 4: Getting Started with Component Development
Where do I start?
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
Plugins
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
The view.html.php file
The view layout file
Installer script
Zip it up and install your component
Summary
Up
Chapter 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
Summary
Up
Chapter 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
Summary
Up
Chapter 7: Frontend Component Development
Getting started on the frontend
Creating a view
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
Summary
Up
Chapter 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
Summary
Up
Chapter 9: Packing Everything Together
Creating a package
Setting up an update server
Managing database changes
Updating the PHP files
Getting listed on the JED
Summary
Up
Chapter 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
Summary
Le informazioni nella sezione "Su questo libro" possono far riferimento a edizioni diverse di questo titolo.
EUR 6,99 per la spedizione da Spagna a Italia
Destinazione, tempi e costiGRATIS per la spedizione da U.S.A. a Italia
Destinazione, tempi e costiDa: Hamelyn, Madrid, M, Spagna
Condizione: Como nuevo. : Aprenda a crear sus propias extensiones de Joomla 3 con esta guía práctica. Ideal para desarrolladores que deseen crear plugins, módulos y componentes personalizados. El libro le guiará a través de la construcción y extensión de plugins, módulos y componentes de Joomla. También aprenderá sobre vulnerabilidades de seguridad comunes y cómo evitarlas, así como a preparar sus extensiones para su distribución y actualizaciones. EAN: 9781782168379 Tipo: Libros Categoría: Tecnología Título: Learning Joomla! 3 Extension Development Autor: Tim Plummer Editorial: Packt Pub Ltd Idioma: en Páginas: 458 Formato: tapa blanda. Codice articolo Happ-2024-02-19-6adcbeae
Quantità: 1 disponibili
Da: medimops, Berlin, Germania
Condizione: good. Befriedigend/Good: Durchschnittlich erhaltenes Buch bzw. Schutzumschlag mit Gebrauchsspuren, aber vollständigen Seiten. / Describes the average WORN book or dust jacket that has all the pages present. Codice articolo M01782168370-G
Quantità: 1 disponibili
Da: Buchmarie, Darmstadt, Germania
Condizione: Good. Codice articolo 3307723_4f3_4x
Quantità: 1 disponibili
Da: WeBuyBooks, Rossendale, LANCS, Regno Unito
Condizione: Very Good. Most items will be dispatched the same or the next working day. A copy that has been read, but is in excellent condition. Pages are intact and not marred by notes or highlighting. The spine remains undamaged. Codice articolo wbs5680742682
Quantità: 1 disponibili
Da: SecondSale, Montgomery, IL, U.S.A.
Condizione: Very Good. Item in good condition. Textbooks may not include supplemental items i.e. CDs, access codes etc. Codice articolo 00052129822
Quantità: 1 disponibili
Da: PBShop.store US, Wood Dale, IL, U.S.A.
PAP. Condizione: New. New Book. Shipped from UK. THIS BOOK IS PRINTED ON DEMAND. Established seller since 2000. Codice articolo L0-9781782168379
Quantità: Più di 20 disponibili
Da: California Books, Miami, FL, U.S.A.
Condizione: New. Codice articolo I-9781782168379
Quantità: Più di 20 disponibili
Da: PBShop.store UK, Fairford, GLOS, Regno Unito
PAP. Condizione: New. New Book. Delivered from our UK warehouse in 4 to 14 business days. THIS BOOK IS PRINTED ON DEMAND. Established seller since 2000. Codice articolo L0-9781782168379
Quantità: Più di 20 disponibili
Da: Ria Christie Collections, Uxbridge, Regno Unito
Condizione: New. In. Codice articolo ria9781782168379_new
Quantità: Più di 20 disponibili
Da: Best Price, Torrance, CA, U.S.A.
Condizione: New. SUPER FAST SHIPPING. Codice articolo 9781782168379
Quantità: 1 disponibili