Welcome to Joomla If you’re new to content management systems (CMS) or even new to building websites, this book will help you get up and running in no time. Whether you’re a web designer or an experienced developer, this tome will help you to use Joomla, one of the most popular content management systems available today.
Have you been asked to build a website in a short period of time? Do you want to enjoy the benefits of a CMS by converting an existing site? Do you have a client that needs a powerful website with lots of functionality for its users? If any of these are true, or you just want to know more about this thing called “Joomla” that people are talking about, this book is for you.
While we’d like to think that Joomla is for everyone, if you’re a developer looking to build extensions or extend and build on Joomla’s framework, this book isn’t for you. If you want to build a site and rarely alter it, perhaps Joomla isn’t for you as it comes with management overhead.
Each chapter of this book breaks down the extensive features of Joomla into easy-to-understand sections, many with hands-on-exercises to help you get going quickly:
The following typographical conventions are used in this book:
Constant width bold
Constant width italic
This element signifies a tip, suggestion, or general note.
This element indicates a warning or caution.
This book is here to help you get your job done. In general, if this book includes code examples, you may use the code in this book in your programs and documentation. You do not need to contact us for permission unless you’re reproducing a significant portion of the code. For example, writing a program that uses several chunks of code from this book does not require permission. Selling or distributing a CD-ROM of examples from O’Reilly books does require permission. Answering a question by citing this book and quoting example code does not require permission. Incorporating a significant amount of example code from this book into your product’s documentation does require permission.
We appreciate, but do not require, attribution. An attribution usually includes the title, author, publisher, and ISBN. For example: “Using Joomla by Ron Severdia and Jennifer Gress (O’Reilly). Copyright 2014 Ron Severdia and Jennifer Gress, 978-0-596-xxxx-x.”
If you feel your use of code examples falls outside fair use or the permission given above, feel free to contact us at email@example.com.
In dealing with any new technology, becoming familiar with the lingo can be a frustrating process. This section will explain some of that lingo to you in plain English.
If you’re not familiar with Joomla, you’ll quickly learn the difference between the Frontend and Backend. It is a very simple concept. The Frontend is what visitors see when viewing your website. However, site administrators will have access to a control panel they can use to build and manage the website. This is called the Backend or is sometimes referred to as the Administrator Backend.
Like most modern content management systems, Joomla allows the installation of add-ons to extend the basic functionality. In Joomla, users can extend the functionality to add features like a shopping cart, discussion forum, calendar, and lots more. These add-ons are collectively referred to as Extensions.
There are seven different types of extensions: Components, Modules, Plugins, Templates, Languages, Libraries, and Packages. Each of these types interact with Joomla in a unique way and offer tremendous flexibility in what a user will experience on the frontend of the website. Each extension type is summarized below and will be addressed in more detail throughout this book.
These are typically the most powerful of the seven types of extensions. Located in the main body of the page, a component is an application that runs within your Joomla website. Examples of a component include a discussion forum, a calendar, or a contact form and even displaying a simple article of text. Every page on a Joomla website must load at least one component.
If you think of your web pages broken up into blocks or zones, most of the blocks that live outside of the main page area are made up of modules. A module can display a menu, show how many items are in your shopping cart, randomly display an article, or even ask the user for certain information. Modules themselves are managed and created through the Module Manager. Where the modules appear on the frontend are dictated by Module Positions in the template. The possibilities are almost endless as to what you can do with a module. Modules are optional extensions on the frontend, but are very useful.
Plugins are a lot more powerful than they are given credit for. In short, they process web page information as it loads and can do just about anything from searching your content to masking email addresses it detects to protect them from spambots. Plugins are optional extensions on the frontend, but are very powerful.
Although most people do not think of templates as extensions, they are classified as such. You can think of a template as a theme or a skin. Joomla makes it easy to change your template on your site as a whole or use templates for individual pages. At least one Site template and one Admin template must be installed on every Joomla website.
Joomla is truly an international CMS and is used by people all over the world. For instance, if you live in The Netherlands, you might prefer to have the Joomla interface in Dutch. Using the Dutch translation, this is done with only a few mouse clicks. Every page on a Joomla website must load at least one language.
Libraries are packages of code which provides a related group of functions. Third-party extension developers can use libraries for their extensions.
Packages are a collection of extensions, for example, a package might contain a template, modules, and plugins used by that template. When a package is uninstalled, it uninstalls all the extensions in the package.
As in other CMSs, content is the information contained on your web site. There may be many different types of content on your web site including articles, photos, calendar events, products for sale, and more.
The most common type of content in a default Joomla installation are called Articles. Articles are organized into Categories. Categories are used to group related articles.
For many users new to Joomla, the concept of articles and categories is fairly easy to understand. We’ll make it even simpler though to clear up any confusion. Think of your website like a filing cabinet. The file folders are the Categories. The pieces of paper inside the folders are the Articles. You can have multiple Articles in a single Category. You cannot have an Article in multiple Categories.
Technology professionals, software developers, web designers, and business and creative professionals use Safari Books Online as their primary resource for research, problem solving, learning, and certification training.
Safari Books Online offers a range of product mixes and pricing programs for organizations, government agencies, and individuals. Subscribers have access to thousands of books, training videos, and prepublication manuscripts in one fully searchable database from publishers like O’Reilly Media, Prentice Hall Professional, Addison-Wesley Professional, Microsoft Press, Sams, Que, Peachpit Press, Focal Press, Cisco Press, John Wiley & Sons, Syngress, Morgan Kaufmann, IBM Redbooks, Packt, Adobe Press, FT Press, Apress, Manning, New Riders, McGraw-Hill, Jones & Bartlett, Course Technology, and dozens more. For more information about Safari Books Online, please visit us online.
Please address comments and questions concerning this book to the publisher:
|O’Reilly Media, Inc.|
|1005 Gravenstein Highway North|
|Sebastopol, CA 95472|
|800-998-9938 (in the United States or Canada)|
|707-829-0515 (international or local)|
We have a web page for this book, where we list errata, examples, and any additional information. You can access this page at:
The authors also have a companion website at:
To comment or ask technical questions about this book, send email to the following, quoting the book’s ISBN number ( need number ):
For more information about our books, courses, conferences, and news, see our website at http://www.oreilly.com.
Find us on Facebook: http://facebook.com/oreilly
Follow us on Twitter: http://twitter.com/oreillymedia
Watch us on YouTube: http://www.youtube.com/oreillymedia
Matt Simonsen, a systems engineer at Khoza Technology, Inc., became interested in Joomla as clients needed solutions to their hosting challenges. As his team grew and began to take on move development projects, Matt has actively participated in the Bay Area Joomla User Group and is a founding member of the Central Valley Joomla Users Group.
David Beuving is the CTO of Khoza Technology, Inc.. and leads the company’s LAMP development team. He has experience using Joomla since Joomla 1.0, has authored a number of extensions, and has contributed code to numerous 3rd party extensions and even the Joomla core. He lives in Jackson, CA, where he enjoys spending time with his family and playing music at church.
Duke Speer is on a campaign to Save the World, one non-profit at a time. He let passion become mission a decade ago when he traded the world of being a CIO for a major Southern California-based broker-dealer for the Park City, Utah lifestyle.
Duke lives at 7,000 ft and is celebrating his 35th year on as a volunteer ski patroller (Canyons Resort). Professionally, he spends his time helping non-profits share their story and demonstrate their impact. A photographer, 3D modeller and digital artist, Duke likes to create visually immersive yet strategic websites designed to walk visitors down the inescapable garden path to becoming a loyal donor. Serving as a Product Advisor for GiftWorks donor management software, he builds bridges between back-end CRM software and Joomla! user profiles that share intelligence gathered from a donor’s every move to create a more intimate experience!
Duke wrote the book on Strata 3D (Strata CX User’s Manual) and Foto 3D; and, is an Adobe Certified Expert, having started with Photoshop 2.5 for Windows in 1992. Switching from Zope & Plone, Duke survived a crash course in Joomla! back in 2008 as a Technical Reviewer of Barry North’s Joomla! User Guide, and is back as one of the technical reviewers of this book.
As a contributer to The Joomla! Project, Duke is the Manager of the Trademark and Licensing Team, serves on the Governance Working Group and contributes articles and art to the Marketing Team and Joomla! Community Magazine. He is probably best known in the Joomlaverse as the designer of the Joomla! Framework’s logo, a popular speaker at many JoomlaDays, and the Host of Joomla!Ignite at the Joomla! World Conference.
by Ryan Ozimek