COVID-19 Response at

Read what we're doing...

Joomla! Programming


Product Description
Product Details

Table of Contents

Preface xix Acknowledgments xxvii About the Authors xxixChapter 1: What Is Joomla! Development? 1 Developing for Joomla Is Not Difficult! 1 Joomla Programming: What Do You Need to Know? 3 Extending Joomla: Let Me Count the Ways 4 Which Extension Type Should I Use for My Project? 14 Using Joomla as a Platform or Framework 15 Summary 16Chapter 2: Getting Your Workstation Ready for Joomla! Development 17 Requirements to Run Joomla 17 Tools of the Trade 21 Other Tools 38 Summary 39Chapter 3: How Joomla! Works 41 Tour of Joomla Folders 41 Joomla Platform 56 Web Programming versus "Normal" Programming 58 Anatomy of a Joomla Execution Cycle 61 Naming Conventions (Conventional Wisdom?) 85 Global Objects 85 Overview of Database Tables 86 Summary 89

Chapter 4: Extending Joomla! with Layout Overrides 91 Template Basics 91 Copy Template 105 Template Layout Override of Latest Articles Module 108 Change the Look of a Component: User Registration 121 Alternative Layouts 125 Adding a New Menu Item Layout 126 How Do Layout Overrides Work? 129 Nonlayout Overrides 129 Summary 138

Chapter 5: Extending Joomla! with Plugins 139 What Is a Plugin? 139 How Do Plugins Work? 139 Plugin Types: Where Can You Insert a Plugin? 140 Tour of Selected Core Plugins 142 User Registration Plugin 164 Improved User Registration Plugin 173 Adding Parameters to Our Plugin 179 Using Plugins to Override Core Classes 182 Plugin Best Practices 186 Summary 186Chapter 6: Extending Joomla! with Modules 187 What Is a Module? 187 Tour of a Core Module 188 Show Articles by the Current Author 197 Summary 227Chapter 7: Components Part I: Controllers and Models 229 What Is a Component? 229 MVC Design Pattern 230 Back-End Weblinks Component 231 Summary 262Chapter 8: Components Part II: Views, JForm, and Front End 263 Views and the display() Method 263 WeblinksViewWeblink View 275 Back-End Weblinks Summary 287 Front-End Weblinks Component 288 Summary 304Chapter 9: Components Part III: Example Component Back End 305 Example Component Functional Overview 305 Detailed Design 306 Back-End Files 307 Subscriptions Manager: Subscriptions Screen 308 Subscriptions Manager: Add and Edit 331 Language Files 349 Installation and Configuration 351 Summary 353Chapter 10: Components Part IV: Example Component Front End 355 Files Overview 355 Installation XML File 355 Component Entry Point 356 Default Controller 357 Subscription-Category View 359 Subscription View 375 Language File 392 Packaging the Component 394 New Functionality: Back- End Subscriber Report 395 Summary 403Chapter 11: Working with Your Database 405 Database Overview 405 Creating and Modifying Tables with DDL Commands 407 Using phpMyAdmin 414 Using SQL Data with DML Commands 419 Designing the Table Structure 429 Working with the Database Inside Joomla 432 Summary 442Chapter 12: JavaScript and MooTools in Joomla! 443 What Is JavaScript? 443 How Does JavaScript Work? 444 What Is MooTools? 444 How JavaScript and MooTools Are Used in Joomla 446 Built-In JavaScript Features 446 Using MooTools Extensions 467 Using AJAX in Joomla 467 Using Other JavaScript Frameworks 471 Summary 473Chapter 13: Using the Joomla! Platform as an Application Framework 475 What Is the Joomla Platform? 475 Why Have a Separate Project? 475 What Can the Platform Be Used For? 476 Platform Example Programs 477 Subscription Monitoring Example 482 Summary 497Appendix A: Crash Course on PHP and Object-Oriented Programming 499 PHP File Structure 499 PHP Syntax Basics 500 Common Operators 502 If Statements 503 Switch Statement 505 Looping Statements 505 Alternative Syntax 507 Variables 508 Arrays 508 Constants and Current Directory 510 Functions and Methods 511 Including Files and File Types 512 Object-Oriented Programming Basics 514 Simple Debugging 518 Some Advanced Code Techniques 519Appendix B: Joomla! Filter Types 523 HTML Filtering 524 Using Filtering in Joomla Applications 524Appendix C: JHtml Methods 527 Calling JHtml Methods 527 JHtml Class Methods 528 HTML Folder Classes 529

Glossary 533 Index 539

About the Author

Mark Dexter has been writing software since the 1970s. He cofounded and ran a commercial software company for 28 years before retiring to do volunteer work in open source software. Mark first started using Joomla! in 2008 and joined the Production Leadership Team in 2009. He has worked extensively in different areas of the project, including the user forums, Google Summer of Code, documentation and help screens, and the Bug Squad. Mark has actively participated in the Joomla! development process since 2009, including fixing bugs, adding features, and coordinating the release of new Joomla! versions. Mark lives in Seattle, Washington. Louis Landry wrote a large part of the Joomla! framework for version 1.5 and 1.6, and he has been a major design architect for Joomla! for more than five years. His first experience with computers was playing on a 286 with Basic at his father's office. Louis has programmed in many languages, ranging from low level x86 assembly to managed languages like Java and scripting languages like PHP. He was a founding member of his university's robotics team. Louis is a car nut, and enjoys working on them in his spare time. He lives in Silicon Valley in California.

Ask a Question About this Product More...
Write your question below:
Look for similar items by category
Home » Books » Computers » Web » Web Design
Home » Books » Computers » Web » General
Home » Books » Computers » Programming » General
How Fishpond Works
Fishpond works with suppliers all over the world to bring you a huge selection of products, really great prices, and delivery included on over 25 million products that we sell. We do our best every day to make Fishpond an awesome place for customers to shop and get what they want — all at the best prices online.
Webmasters, Bloggers & Website Owners
You can earn a 5% commission by selling Joomla! Programming on your website. It's easy to get started - we will give you example code. After you're set-up, your website can earn you money while you work, play or even sleep! You should start right now!
Authors / Publishers
Are you the Author or Publisher of a book? Or the manufacturer of one of the millions of products that we sell. You can improve sales and grow your revenue by submitting additional information on this title. The better the information we have about a product, the more we will sell!
Item ships from and is sold by, Inc.
Back to top