Joomla! 3 Beginner's Guide Second Edition
()
About this ebook
Eric Tiggeler
Eric Tiggeler is the author of the Joomla! 3 Beginner's Guide and has written several Dutch guides on Joomla! and other content management systems, all of which got excellent reviews. Eric writes tutorials for several computer magazines and Joomla! community websites. Over the last ten years, Eric has developed numerous websites, big and small, many of them using Joomla! Eric is fascinated by the Web as a powerful and creative means of communication, and by revolutionary software such as Joomla!, which enables anyone to create beautiful and user-friendly websites. His passion is making complex things easy to understand.
Read more from Eric Tiggeler
Joomla! 2.5 Beginner's Guide Rating: 0 out of 5 stars0 ratingsJoomla! 1.5 Beginner's Guide Rating: 0 out of 5 stars0 ratingsJoomla! 1.6 First Look Rating: 0 out of 5 stars0 ratings
Related to Joomla! 3 Beginner's Guide Second Edition
Related ebooks
Social Media for WordPress Beginner's Guide Rating: 0 out of 5 stars0 ratingsPhpStorm Cookbook Rating: 0 out of 5 stars0 ratingsSpring MVC: Beginner's Guide - Second Edition Rating: 0 out of 5 stars0 ratingsWordPress Web Application Development - Second Edition Rating: 0 out of 5 stars0 ratingsMagento Beginner's Guide Rating: 0 out of 5 stars0 ratingsJoomla! For Dummies Rating: 5 out of 5 stars5/5Learning Adobe Muse Rating: 4 out of 5 stars4/5WordPress Plugin Development: Beginner's Guide Rating: 0 out of 5 stars0 ratingsWordPress Search Engine Optimization - Second Edition Rating: 0 out of 5 stars0 ratingsPrestaShop 1.5 Beginners Guide Rating: 0 out of 5 stars0 ratingsPrestaShop 1.3 Beginner's Guide Rating: 5 out of 5 stars5/5WooCommerce Cookbook Rating: 0 out of 5 stars0 ratingsMonetizing Your Book: Part II: Conducting an Online Sales Campaign, #2 Rating: 0 out of 5 stars0 ratingsWiX Cookbook Rating: 0 out of 5 stars0 ratingsHow To Choose A Free WordPress Theme Rating: 0 out of 5 stars0 ratingsDrupal 8 SEO: The Visual, Step-By-Step Guide to Drupal Search Engine Optimization Rating: 3 out of 5 stars3/5Easy WP Guide WordPress Manual Rating: 0 out of 5 stars0 ratingsHow Do Virtual Assistants Work? Rating: 3 out of 5 stars3/5Learning Swift - Second Edition Rating: 0 out of 5 stars0 ratingsEssential TypeScript 4: From Beginner to Pro Rating: 0 out of 5 stars0 ratingsGetting Started with SpriteKit Rating: 0 out of 5 stars0 ratingsmacOS Catalina For Dummies Rating: 0 out of 5 stars0 ratingsBuilding E-Commerce Solutions with WooCommerce - Second Edition Rating: 0 out of 5 stars0 ratingsAmazon FBA - A Beginner’s Guide to Selling on Amazon, Launch Private Label Products, and Earn Passive Income While You Sleep Rating: 0 out of 5 stars0 ratingsDesign for Developers Rating: 0 out of 5 stars0 ratingsMake Money Creating Profitable Turnkey Websites Fast Rating: 0 out of 5 stars0 ratingsRockin' ROI: How to Bootstrap Ecommerce with Performance-based Marketing Rating: 0 out of 5 stars0 ratingsShopify Application Development Rating: 0 out of 5 stars0 ratingsOpen Source Fuzzing Tools Rating: 0 out of 5 stars0 ratingsJavaScript Unleashed: Harnessing the Power of Web Scripting Rating: 0 out of 5 stars0 ratings
Programming For You
Excel : The Ultimate Comprehensive Step-By-Step Guide to the Basics of Excel Programming: 1 Rating: 5 out of 5 stars5/5Python: Learn Python in 24 Hours Rating: 4 out of 5 stars4/5Java for Beginners: A Crash Course to Learn Java Programming in 1 Week Rating: 5 out of 5 stars5/5Python: For Beginners A Crash Course Guide To Learn Python in 1 Week Rating: 4 out of 5 stars4/5Modern C++ for Absolute Beginners: A Friendly Introduction to C++ Programming Language and C++11 to C++20 Standards Rating: 0 out of 5 stars0 ratingsSQL: For Beginners: Your Guide To Easily Learn SQL Programming in 7 Days Rating: 5 out of 5 stars5/5Python Programming : How to Code Python Fast In Just 24 Hours With 7 Simple Steps Rating: 4 out of 5 stars4/5Python Machine Learning By Example Rating: 4 out of 5 stars4/5HTML & CSS: Learn the Fundaments in 7 Days Rating: 4 out of 5 stars4/5SQL QuickStart Guide: The Simplified Beginner's Guide to Managing, Analyzing, and Manipulating Data With SQL Rating: 4 out of 5 stars4/5Grokking Algorithms: An illustrated guide for programmers and other curious people Rating: 4 out of 5 stars4/5Coding All-in-One For Dummies Rating: 4 out of 5 stars4/5Learn to Code. Get a Job. The Ultimate Guide to Learning and Getting Hired as a Developer. Rating: 5 out of 5 stars5/5Learn JavaScript in 24 Hours Rating: 3 out of 5 stars3/5Linux Command Line and Shell Scripting Bible Rating: 3 out of 5 stars3/5Learn PowerShell in a Month of Lunches, Fourth Edition: Covers Windows, Linux, and macOS Rating: 0 out of 5 stars0 ratingsSQL All-in-One For Dummies Rating: 3 out of 5 stars3/5Learn SQL in 24 Hours Rating: 5 out of 5 stars5/5PYTHON: Practical Python Programming For Beginners & Experts With Hands-on Project Rating: 5 out of 5 stars5/5HTML in 30 Pages Rating: 5 out of 5 stars5/5Python QuickStart Guide: The Simplified Beginner's Guide to Python Programming Using Hands-On Projects and Real-World Applications Rating: 0 out of 5 stars0 ratingsMastering Windows PowerShell Scripting Rating: 4 out of 5 stars4/5Photoshop For Beginners: Learn Adobe Photoshop cs5 Basics With Tutorials Rating: 0 out of 5 stars0 ratings
Reviews for Joomla! 3 Beginner's Guide Second Edition
0 ratings0 reviews
Book preview
Joomla! 3 Beginner's Guide Second Edition - Eric Tiggeler
Table of Contents
Joomla! 3 Beginner's Guide Second Edition
Credits
About the Author
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
Time for action – heading
What just happened?
Pop quiz – heading
Have a go hero – heading
Reader feedback
Customer support
Errata
Piracy
Questions
1. A New and Easy Way to Build Websites
Join the CMS revolution
Why would you choose Joomla!?
What kind of sites can you build with Joomla!?
Learning to use Joomla!
The approach of this book
What's the current version of Joomla!?
About the example site
Summary
2. Getting Joomla! Up and Running
What do you need to start?
Hosting space
FTP software
More than one browser
Installing Joomla! on a web server
Time for action – downloading the Joomla! files
What just happened?
Time for action – placing the files on the web server
What just happened?
Time for action – creating a database
What just happened?
Time for action – running the Joomla! installation wizard
What just happened?
What are post-installation messages?
Installing Joomla! on your own computer
Downloading and installing a web server software
Time for action – installing XAMPP
What just happened?
Creating a database
Time for action – creating a MySQL database
What just happened?
Downloading and installing Joomla!
Time for action – downloading Joomla! and running the installation wizard
What just happened?
What if it the installation doesn't work?
Upgrading from previous versions of Joomla!
Updating Joomla! 1.5 to 3.x
Updating Joomla! 2.5 to 3.x
Got stuck? Get help!
Pop quiz – test your knowledge of installing Joomla
Summary
3. First Steps – Getting to Know Joomla!
Building websites the Joomla! way
Sorry, web pages have ceased to exist
The benefits of the CMS approach to websites
A website built of blocks
Introducing the frontend and backend – the Joomla! interface
Your workspace – the backend
What's the frontend?
Exploring the frontend – the website as the user sees it
Time for action – touring the example site
What just happened?
Exploring the example content
Have go hero – get familiar with the other example sites
Administering your site in the backend
Time for action – logging in to the backend
What just happened?
Taking a closer look at Control Panel
The top menu
The shortcut list (quick icons)
The information panels
The preview and info bar
Adjusting Control Panel to your needs
Understanding the backend tools and controls
What if you can't click on the top menu items?
Getting your feet wet – start administering your site
The three types of backend tasks
A content management example – let's create some content!
Time for action – publishing your first article
What just happened?
An extension management example – adding a module
Time for action – adding a module to the site
What just happened?
A site management example – configuring basic site settings
Time for action – setting Joomla! preferences
What just happened?
Have a go hero – explore the configuration options
Pop quiz – test your knowledge of Joomla basics
Summary
4. Web Building Basics – Creating a Site in an Hour
What you will be making
Meet your client
Removing the sample data
Step one – removing the sample content
Time for action – deleting articles and categories
Step two – deleting menus and other modules
Time for action – deleting menus
What just happened?
Have a go hero – clean out the list of modules
Building your new site in three steps
Step one – customizing the layout
Time for action – creating a copy of the current template
What just happened?
Time for action – preparing a new logo image
Time for action – tweaking the design details
What just happened?
CSS style sheets? Come again?
Have a go hero – exploring layout settings
Step two – adding content
Creating a foundation first – creating categories
Time for action – creating a news category
What just happened?
Creating articles and using the images and links fields
Time for action – creating an article
What just happened?
Have a go hero – add more images to articles
Making content visible on the site – creating a menu link
Time for action – adding a menu link
What just happened?
That's the all-important power of menus
Have a go hero – create more categories and articles
Creating menu links to the new content
Adding individual content pages – uncategorized articles
Time for action – adding uncategorized articles
What just happened?
Have a go hero – rearrange the main menu using drag-and-drop
Putting content on the home page – at last!
Adding items to the home page
Time for action – assigning articles to the home page
What just happened?
Step three – adding extras through extensions
Components and extensions – what's the difference?
Adding a contact form
Time for action – creating a contact
What just happened?
Time for action – creating a Contact Form menu link
What just happened?
Adding a special message block
Time for action – creating a message block
What just happened?
Wrapping up – changing site settings
Time for action – changing the site configuration
What just happened?
Pop quiz – test your basic Joomla knowledge
Summary
5. Small Sites, Big Sites – Organizing Your Content Effectively
Building on the example site
Grouping content – a crash course on site organization
Designing a site map
Time for action – creating a future-proof site map
What just happened?
Using tags as an additional means of organizing content
Transferring your site map to Joomla!
How do you turn a site map into a website?
Creating categories and subcategories
Time for action – creating a category and subcategories
What just happened?
In what case do you need more subcategory levels?
Have a go hero – rearrange existing categories
Adding content to new categories
Displaying main categories and subcategories on your site
Time for action – creating a link to point to a main category
Have a go hero – exploring the possibilities of category pages
Refining your site structure
Time for action – moving content from one category to another
What just happened?
Have a go hero – moving entire categories
Renaming categories
Time for action – renaming a category
What just happened?
Have a go hero – name and rename
Changing the category settings
Using tags to label and organize content
Adding tags to the example site
Time for action – creating a tag
What just happened?
Have a go hero – improve the tagged items page
Creating and managing tags using the Tags component
Using tags as an alternative to categories
Building a site without using categories or tags
How do you go about building a small site?
Have a go hero – organize a site!
Pop quiz – test your site organization knowledge
Summary
6. Creating Killer Content – Adding and Editing Articles
Articles and content pages – what's the difference?
Creating and editing articles – beyond the basics
Making your words look good – formatting article text
Time for action – adding styles to the article text
What just happened?
Have a go hero – change the formatting
Extending the text editor
Adding images to articles
Time for action – uploading images
What just happened?
Time for action – inserting and aligning images
What just happened?
Changing the way the article is displayed
Splitting the article into intro text and main text
Time for action – creating intro text
What just happened?
Creating multipage articles
Time for action – using page breaks to split up an article
What just happened?
Have a go hero – use sliders and tabs
Displaying images and links with articles
Time for action – adding images and links to an article
What just happened?
Have a go hero – tweak the article layout
Restoring a previous version of an article
What just happened?
Have a go hero – explore version control options
Tweaking the details – changing article settings
The Publishing tab
The Images and links tab
The Options tab
The Configure Edit Screen tab
The Permissions tab
Setting general preferences for all articles
The Articles tab
The Editing Layout tab
The Category tab
The Categories, Blog/Featured Layouts, List Layouts, and Shared Options tabs
The Integration tab
The Permissions tab
Archiving articles
Time for action – creating a News archive
What just happened?
Pop quiz – test your article expertise
Summary
7. Welcoming Your Visitors – Creating Attractive Home Pages and Overview Pages
Why do you need overview pages anyway?
Mastering the home page layout
Changing the way the home page is arranged
Time for action – rearranging the layout of articles on the home page
What just happened?
Have a go hero – tweak the home page layout options
Adding items to the home page
Controlling the order of the home page items manually
Creating a sticky article
Setting criteria to automatically order the home page items
Time for action – showing the most recent items first
What just happened?
The Featured Articles menu item type – an overview of all options
The Layout tab
The Options tab
The Integration Options tab
The Link Type Options tab
The Page Display Options tab
The Metadata Options tab
The Module Assignment tab
Creating more than one page that contains featured articles
Another type of home page – using a single article
Time for action – creating a different home page
What just happened?
Have a go hero – undo!
Creating category overview pages
Two main choices – Blog layout and List layout
The first type of overview page – creating Category Blog layouts
Time for action – creating a face book using the Blog layout
What just happened?
Have a go hero – add a category description
Showing full articles on a category overview page
Have a go hero – experiment with the Category Blog layout settings
Setting the options for the Category Blog menu item type
Category Options
The second type of overview page – lists
Time for action – adding a link to a Category List layout
What just happened?
Customizing lists – exploring the Category List options
Category Options
List Layouts
Options, Integration, Link Type, Page Display, and Metadata tabs
How are multi-level categories displayed in Lists?
Creating overview pages that show tagged articles
Time for action – creating a tagged items overview page
What just happened?
Have a go hero – experiment using tag pages
Pop Quiz – test your knowledge of home pages and overview pages
Summary
8. Helping Your Visitors Find What They Want – Managing Menus
How many menus can you have?
Creating user-friendly navigation – cleaning up Main Menu
Option one – changing the order of menu items
Time for action – changing the order of menu items
What just happened?
Option two – creating submenu items
Time for action – creating a secondary menu item
What just happened?
Option three – adding a separate new menu
Time for action – create a new, empty menu
What just happened?
Time for action – moving hyperlinks to the new menu
What just happened?
Time for action – telling Joomla! where to display the menu
What just happened?
Have a go hero – changing menu settings
Using the horizontal drop-down menu as the main menu
Time for action – displaying Main Menu links in Top Menu
Have a go hero – cleaning up menus and menu links
Creating split submenus
Have a go hero – arranging menus any way you like
Exploring menu module settings
Switching to the menu module screen
The Module tab
The Menu Assignment tab
The Module Permissions tab
The Advanced tab
What types of menu links are available?
Have a go hero – try out menu item types
Creating plain text links
Time for action – creating text links
What just happened?
Pop quiz – test your menu knowledge
Summary
9. Opening Up the Site – Enabling Users to Log in and Contribute
Working with the default set of user groups
An overview of the default user groups and their permissions
Public and Guest users – the site visitors
Registered users – the user group that can log in
Author, Editor, and Publisher – the frontend content contributors
Manager, administrator, and super user – the backend content contributors and administrators
Shop Suppliers and Customers – two example user groups
Enabling users to log in and contribute content
Time for action – adding a user with frontend authoring permissions
What just happened?
Enabling content contributors to log in to the frontend
Time for action – putting Login Form on the home page
What just happened?
Time for action – logging in as a frontend content contributor
What just happened?
Have a go hero – creating a frontend User Menu
Reviewing and publishing team content submissions
Time for action – reviewing and publishing submitted content
What just happened?
Have a go hero – explore different User Group permissions
Finding out what editors and publishers can do
Finding out what backend users can do
Enabling self-registration – allowing visitors to register
How do you enable users to create their own account?
Displaying a Login menu link
Time for action – registering yourself and logging in
What just happened?
Hiding content for nonregistered users
Time for action – hiding content for nonregistered users
What just happened?
Have a go hero – changing access level settings
Getting your visitors to register to read more
Time for action – partially hiding content from nonregistered users
What just happened?
Creating custom-made user groups
An overview of the permissions you can assign to user groups
An overview of all available Viewing Access Levels
Creating a custom user group to manage contacts
Time for action – creating a user group
What just happened?
Time for action – telling Joomla! what the group can see
What just happened?
Time for action – telling Joomla! what the group can do
What just happened?
Time for action – adding users to the new group
What just happened?
Pop quiz – test your knowledge of Joomla user management
Summary
10. Getting the Most out of Your Site – Extending Joomla!
Extensions in all shapes and sizes
The big ones – components
The medium ones – modules
The tiny ones – plugins
Where do you get extensions from?
Enhancing your site using core extensions
Highlighting articles using the Newsflash module
Time for action – adding the Newsflash module to the home page
What just happened?
Have a go hero – change the Newsflash module settings
Creating a list of contacts using the Contacts component
Time for action – adding a series of contacts
What just happened?
Have a go hero – try out the Contact component settings
What extensions are parts of the Joomla! core?
Enhancing your site using third-party extensions
Trying out a more powerful Newsflash module
Time for action – downloading and installing an extension
What just happened?
Time for action – putting the extension to work
What just happened?
Have a go hero – explore module options
Showing images in a lightbox gallery
Time for action – creating an image gallery
What just happened?
Have a go hero – add your own images
Do you need a more powerful photo gallery?
Using extensions to enhance your work space
Time for action – replacing the default text editor of Joomla!
What just happened?
Creating text links using JCE
Inserting images with JCE
Using JCE to create a link to a PDF or Word file
Customizing JCE
A selection of must-have extensions
Add to Menu – adding links directly from articles
Asikart RemoteImage – a much-enhanced image editor
B2J Contact – a feature-rich contact form
Finding the right extensions for your site
Updating extensions
Managing the site language
Changing default text strings
Time for action – removing or replacing default texts
What just happened?
Have a go hero – add default pieces of text that suit your needs
Using the Language Manager to create multilingual sites
Pop quiz – test your knowledge of Joomla! extensions
Summary
11. Creating an Attractive Design – Working with Templates
What do templates do?
Why are templates so much fun?
Changing the settings of the current template
The function of template styles
Customizing the current template using the built-in options
Time for action – changing the site color and layout options
What just happened?
Switching to a different template
The templates that come with Joomla!
Previewing the available templates
Setting a different template as the default
Time for action – activating a different template
What just happened?
Applying template styles to individual pages
Time for action – creating a template style for one specific page
What just happened?
Downloading and installing a new template
Time for action – downloading and activating a new template
What just happened?
Time for action – adding the logo file
What just happened?
Time for action – adding a menu module
What just happened?
Time for action – placing modules in new template positions
What just happened?
Have a go hero – changing the page and module layout
Customizing a template – tweaking CSS styles
Understanding the very basics of CSS
Time for action – customizing the background color using CSS
What just happened?
Diving deeper into Joomla! CSS – using developer tools
Expanding your CSS knowledge
Backing up and restoring a customized template
Where can you get a new template for your site?
Creating your own template
Template building resources
Using a template framework as the base for your own template
Pop quiz – test your knowledge of Joomla! templates
Summary
12. Attracting Search Engine Traffic – SEO Tips and Techniques
Working on search engine optimization
Why do you need to accommodate search engines?
Optimizing articles to make them easy to find
The article title – making it meaningful
The article structure – using clear formatting
Adding H1 heading
Adding H2 Headings
Adding H3 through H6 headings
Optimizing the use of H1 headings
The article body text – using relevant keywords
Updating articles regularly
The images – giving more information
Configuring HTML page titles
Time for action – setting the HTML page title
What just happened?
Adding the site name to the page title
Adding meaningful metadata
Time for action – personalizing the site metadata
What just happened?
Choosing what metadata to set
Have a go hero – find metadata to fit your site
Using search engine friendly URLs
Adding extra links to the site's content
Creating an automatically generated list of hyperlinks
Time for action – adding a list of links to popular articles
What just happened?
Have a go hero – adding link lists
Adding microdata to your content
Redirecting visitors after pages have been moved
Time for action – creating page redirects
Getting to know more about your site's traffic
More SEO resources
Pop quiz – test your knowledge of Joomla! search engine optimization
Summary
A. Keeping the Site Secure
Choosing a web host that meets your security requirements
Tip 1 – Download from reliable sources
Tip 2 – Update regularly
Tip 3 – Choose a safe administrator username
Tip 4 – Pick a strong password
Tip 5 – Use Two-Factor authentication
Enabling the Two-Factor authentication system of Joomla!
Tip 6 – Protect files and directories
Setting file permissions
Tip 7 – Use extensions to secure your site
Using the Joomla! Captcha plugin to avoid spam
Tip 8 – Have a backup ready
Creating a backup with Akeeba Backup
Restoring a backup file
Tip 9 – Stay informed!
B. Creating a Multilingual Site
Creating a new site with multilingual capabilities
Installing Joomla! with multilingual support
Exploring the frontend of the new multilingual site
Exploring the backend of the new multilingual site
Adding new multilingual content
Creating a translated version of an existing site
Adding a new language
Enabling Joomla! to switch between languages
Adding multilingual content
Creating menus for multilingual content
Connecting menu links to their translated counterparts
Finalizing the site menus
Enabling the visitor to select a language
Reading the step-by-step tutorial on multilingual sites
C. Pop Quiz Answers
Chapter 2, Getting Joomla! Up and Running
Pop quiz – test your knowledge of installing Joomla!
Chapter 3, First Steps – Getting to Know Joomla!
Pop quiz – test your knowledge of Joomla! basics
Chapter 4, Web Building Basics – Creating a Site in an Hour
Pop quiz – test your basic Joomla! knowledge
Chapter 5, Small Sites, Big Sites – Organizing Your Content Effectively
Pop quiz – test your site organization knowledge
Chapter 6, Creating Killer Content – Adding and Editing Articles
Pop quiz – test your article expertise
Chapter 7, Welcoming Your Visitors – Creating Attractive Home Pages and Overview Pages
Pop quiz – test your knowledge of home pages and overview pages
Chapter 8, Helping Your Visitors Find What They Want – Managing Menus
Pop quiz – test your menu knowledge
Chapter 9, Opening Up the Site – Enabling Users to Log in and Contribute
Pop quiz – test your knowledge of Joomla! user management
Chapter 10, Getting the Most out of Your Site – Extending Joomla!
Pop quiz – test your knowledge of Joomla! extensions
Chapter 11, Creating an Attractive Design – Working with Templates
Pop quiz – test your knowledge of Joomla! templates
Chapter 12, Attracting Search Engine Traffic – SEO Tips and Techniques
Pop quiz – test your knowledge of Joomla! search engine optimization
Index
Joomla! 3 Beginner's Guide Second Edition
Joomla! 3 Beginner's Guide Second Edition
Copyright © 2014 Packt Publishing
All rights reserved. No part of this book may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written permission of the publisher, except in the case of brief quotations embedded in critical articles or reviews.
Every effort has been made in the preparation of this book to ensure the accuracy of the information presented. However, the information contained in this book is sold without warranty, either express or implied. Neither the author, nor Packt Publishing, and its dealers and distributors will be held liable for any damages caused or alleged to be caused directly or indirectly by this book.
Packt Publishing has endeavored to provide trademark information about all of the companies and products mentioned in this book by the appropriate use of capitals. However, Packt Publishing cannot guarantee the accuracy of this information.
First published: March 2013
Second edition: July 2014
Production reference: 1140714
Published by Packt Publishing Ltd.
Livery Place
35 Livery Street
Birmingham B3 2PB, UK.
ISBN 978-1-78398-150-2
www.packtpub.com
Cover image by Gokce Akbalik (<gokceakbalik@gmail.com>)
Credits
Author
Eric Tiggeler
Reviewers
Mohamed Abdelaziz
Mir Parvez Akther
Antony Doyle
Mark Kielar
Konstantinos Manos
Peter Martin
Commissioning Editor
Julian Ursell
Acquisition Editors
Luke Presland
Sam Wood
Content Development Editor
Rikshith Shetty
Technical Editors
Pragnesh Bilimoria
Taabish Khan
Nikhil Potdukhe
Copy Editors
Roshni Banerjee
Sarang Chari
Mradula Hegde
Project Coordinators
Kinjal Bari
Neha Bhatnagar
Proofreaders
Simran Bhogal
Maria Gould
Ameesha Green
Paul Hindle
Indexers
Hemangini Bari
Mariammal Chettiyar
Graphics
Abhinash Sahu
Production Coordinator
Alwin Roy
Cover Work
Alwin Roy
About the Author
Eric Tiggeler has authored several books on Joomla!, such as the highly successful Joomla! 2.5 Beginner's Guide and Joomla! 3 Beginner's Guide, both by Packt Publishing. He has also written several Joomla! guides in Dutch. His books have received excellent reader reviews. He also writes tutorials for several computer magazines and Joomla! community websites. Over the last ten years, he has developed numerous websites, big and small, using Joomla!.
He is fascinated by the Web as a powerful, creative, and ever-changing means of communication, as well as by the revolutionary software Joomla!, which enables anybody to create beautiful and user-friendly websites.
On a daily basis, he works as a consultant and copywriter at a communication consultancy company affiliated to the Free University of Amsterdam. Over the last few years, he has written more than 20 books in Dutch on writing and communication. His passion lies in making complex things easy to understand.
He is married, has two daughters, and lives and works in Hilversum, the Netherlands. On the Web, you'll find him at www.joomla.erictiggeler.nl (in Dutch) and www.joomm.net (in English).
Any book is a team effort, so I would like to thank everyone at Packt Publishing for their encouraging commitment to this project. I also wish to thank the reviewers for testing the alpha version of this book and helping me create a thoroughly reliable final release!
About the Reviewers
Mohamed Abdelaziz is a 37-year-old freelance Joomla! developer with extensive experience in developing and customizing Joomla! extensions. He has created six extensions that are listed on JED, for example, Multiple Extra Fields Groups for K2 and others. These extensions are published at www.joomreem.com.
He worked on freelancing websites from 2007 to 2011. Since then, he has completed 100 plus projects, ranging from large- to small-size development and customization jobs, with excellent reviews from most of his clients.
Prior to working as a freelance Joomla! developer, he worked as a software engineer and systems analyst for EJADA Systems (from 2002 to 2005). He participated in the analysis of the Saudi Ministry of Commerce workflow. In addition to this, he designed and developed an automated system using the Oracle database and developer to replace the manual system they had.
He graduated from Alexandria University with a BSc degree in Computer Science and Automatic Control (2000), and became a Sun Certified Programmer for the Java 2 Platform 1.4 in October 2005.
He was one of the technical reviewers of Joomla! 2.5 Beginner's Guide, Eric Tiggeler, Packt Publishing. He is also active on some of the Joomla! community forums to exchange knowledge and help other Joomla! users.
I would like to thank my entire family, my father, mother, wife, and my kids, Reem and Omar, who have constantly motivated me, and which helped me review this book.
Mir Parvez Akther is a young and enthusiastic web developer who believes that nothing is impossible in the domain of programming. With an extensive eight-year work experience in web and advance-level programming, he has created a cool, applicable, and useful Joomla Template Framework, Expose. Expose has been the heart of millions of websites that run online and can be found from www.themexpert.com.
He dropped out of his undergraduate course and got involved in web development in 2006. After working on several hundred websites for clients, he bootstrapped his own start-up called ThemeXpert. ThemeXpert has more than 55,000 clients all over the world and is a renowned Template Studio for Joomla!. It also has 50 plus premium and free Joomla! templates and more than 15 extensions at the time of writing this book. Some of these Joomla! extensions are very popular in Joomla! Extension Directory (JED) and have been downloaded over 200,000 times.
Antony Doyle is a frontend developer, designer, and Joomla! specialist. He's been designing, building, and experimenting on the Web since 1998, and between 2005 and 2013, he worked almost exclusively on Joomla! as a freelance web developer.
He created SiegeEngine, the Foundation-based template framework for Joomla!, as a starting point for projects, which has since become a popular open source project in itself. While he specializes in CSS, HTML, and JavaScript, he's known to turn his hand to PHP, MySQL, .NET, and C#. Since building SiegeEngine, he's also pretty handy with the Foundation CSS framework.
Since early 2013, he is a member of the professional services team at Zengenti, working with the government, universities, and large public sector companies, and developing world-class websites on their own enterprise CMS, Contensis.
Mark Kielar brings with him over 25 years of experience in design, photography, commercial art, analysis, and computing to his understanding of open source content management systems such as Joomla! 1.6, 2.5, and 3.3. He has applied his expertise in web design and development and writing and editing projects for commercial websites and fan-type websites and blogs.
He currently operates his own web design and content management business in the San Francisco Bay Area. He has also served as a technical reviewer on Joomla! 1.6 First Look, Eric Tiggeler, Packt Publishing.
Konstantinos Manos has a PhD in Computer Science and more than 15 years of experience as a software designer and developer in companies such as SingularLogic, Addit Solutions, Innews, and Audiotex SA.
Lately, he has been working as a freelance software engineer, specializing in Internet applications and infrastructure development. Using Delphi, PHP, VB.NET, ASPX.NET, Objective-C, MySQL, and MSSQL, he combines binary applications with Internet frontends via the use of dynamic websites (AJAX), web services (XML, SOAP), or RSS feeds that create flexible, live, and robust Internet applications.
He is the co-founder of two companies, one that specializes in developing browser-based MMO strategy games and another that promotes a portal for restaurants in Greece.
Peter Martin has a keen interest in computers, programming, sharing knowledge, and how people use information technology. He has a bachelor's degree in Economics (International Marketing Management) and a master's degree in Mass Communication.
He discovered PHP/MySQL in 2003 and the predecessor of Joomla!, Mambo CMS, a year later. He has his own business at www.db8.nl (founded in 2005) and supports companies and organizations with Joomla! implementations, support, and training and custom Joomla! extension development.
He is actively involved in the Joomla! community, where he is a member of the Community Leadership Team and Global Moderator at the Joomla! forum. In his hometown, Nijmegen (the Netherlands), he organizes Open Coffee Nijmegen (a monthly networking event for small businesses and self-employed people) and Linux User Group Nijmegen.
For Packt Publishing, Peter has reviewed various books such as Joomla! 3 Beginner's Guide, Joomla! 2.5 Beginner's Guide, and Joomla! 1.6 First Look, all by Eric Tiggeler; Joomla! Search Engine Optimization, Ric Shreves; and Joomla! 1.5 Templates Cookbook, Richard Carter.
His other interests are open source software, Linux (Debian), Raspberry Pi, music (collecting vinyl records), art house movies, and trivia.
www.PacktPub.com
Support files, eBooks, discount offers, and more
You might want to visit www.PacktPub.com for support files and downloads related to your book.
Did you know that Packt offers eBook versions of every book published, with PDF and ePub files available? You can upgrade to the eBook version at www.PacktPub.com and as a print book customer, you are entitled to a discount on the eBook copy. Get in touch with us at
At www.PacktPub.com, you can also read a collection of free technical articles, sign up for a range of free newsletters and receive exclusive discounts and offers on Packt books and eBooks.
http://PacktLib.PacktPub.com
Do you need instant solutions to your IT questions? PacktLib is Packt's online digital book library. Here, you can access, read and search across Packt's entire library of books.
Why subscribe?
Fully searchable across every book published by Packt
Copy and paste, print and bookmark content
On demand and accessible via web browser
Free access for Packt account holders
If you have an account with Packt at www.PacktPub.com, you can use this to access PacktLib today and view nine entirely free books. Simply use your login credentials for immediate access.
Preface
Joomla! is one of the most popular open source content management systems, and it is actively developed and supported by a worldwide user community. It's a free, fun, and feature-rich tool for anyone who wants to create dynamic, interactive websites. Even beginners can deploy Joomla! to build professional websites, although it can be challenging to get beyond the basics and build a site that completely meets your needs. This book will help you to start building websites with Joomla! quickly, and also help you learn step-by-step to get the most out of its advanced features.
What this book covers
Chapter 1, A New and Easy Way to Build Websites, will help you learn why you want to use Joomla! to create an advanced, cool-looking site that's easy to expand, customize, and maintain.
Chapter 2, Getting Joomla! Up and Running, will show you how to install Joomla! on your own computer or on a web server and how to create a sample site.
Chapter 3, First Steps – Getting to Know Joomla!, will familiarize you with the basic concepts of Joomla!, the administrative interface, and the principles of a website constructed out of building blocks.
Chapter 4, Web Building Basics – Creating a Site in an Hour, will make you face a real-life challenge of using Joomla! to build a basic but expandable website in less time. You'll customize a default sample site of Joomla! to fit your needs, adding content and menu links and changing the site's look and feel.
Chapter 5, Small Sites, Big Sites – Organizing Your Content Effectively, will help you design a clear, expandable, and manageable framework for your content. Using a structure of categories and tags, you will make it easy for the users to add and find information on your site.
Chapter 6, Creating Killer Content – Adding and Editing Articles, will help you to create attractive content pages, and you'll learn about different ways to add images and tweak the page layout.
Chapter 7, Welcoming Your Visitors – Creating Attractive Home Pages and Overview Pages, shows you how to create a home page and overview pages to entice visitors to actually read all your valuable content.
Chapter 8, Helping Your Visitors Find What They Want – Managing Menus, will discuss how you can help visitors to find what they want by designing clear and straightforward navigation through menus.
Chapter 9, Opening Up the Site – Enabling Users to Log in and Contribute, will show you how to enable users to log in and allow them to create content and manage a website.
Chapter 10, Getting the Most out of Your Site – Extending Joomla!, will explain how to extend the capabilities of Joomla! using all sorts of extensions, such as using an image gallery to display pictures attractively, automatically showing article teasers on the home page, or enhancing your workspace by installing a more powerful content editor.
Chapter 11, Creating an Attractive Design – Working with Templates, will show you how templates can give your site a fresh look and feel and how you can customize templates to create an individual look, different from a typical Joomla! site.
Chapter 12, Attracting Search Engine Traffic – SEO Tips and Techniques, will show you how to increase your site's visibility for search engines by applying Search Engine Optimization (SEO) techniques, such as creating friendly URLs.
Appendix A, Keeping the Site Secure, will explore some simple, logical steps you can take to safeguard your site from hackers or data loss.
Appendix B, Creating a Multilingual Site, will walk you through the series of steps involved in creating a bilingual website using the multilingual capabilities built in Joomla!.
Appendix C, Pop Quiz Answers, contains answers to the multiple choice pop quizzes you will find throughout the book.
What you need for this book
To follow the tutorials and exercises in this book, you'll need a computer with an Internet connection. It's recommended to have a web hosting account so that you can install Joomla! online.
Who this book is for
Joomla! 3 Beginner's Guide Second Edition is aimed at anyone who wants to build and maintain a great website and get the most out of Joomla!. It helps you build on the skills and knowledge you may already have of creating websites, but if you're new to this subject, you won't have any difficulty understanding the instructions. Of course, we'll touch upon basic terms and concepts (such as HTML and CSS), but if you're not familiar with these, you'll also find references to some web resources.
Conventions
In this book, you will find several headings appearing frequently.
To give clear instructions of how to complete a procedure or task, we use:
Time for action – heading
Action 1
Action 2
Action 3
Instructions often need some extra explanation so that they make sense, so they are followed with:
What just happened?
This heading explains the working of tasks or instructions that you have just completed.
You will also find some other learning aids in the book, including:
Pop quiz – heading
These are short multiple-choice questions intended to help you test your own understanding.
Have a go hero – heading
These practical challenges give you ideas for experimenting with what you have learned.
You will also find a number of styles of text that distinguish between different kinds of information. Here are some examples of these styles, and an explanation of their meaning.
Code words in text, database table names, folder names, filenames, file extensions, pathnames, dummy URLs, user input, and Twitter handles are shown as follows: Click on the icon of the sampledata folder.
A block of code is set as follows:
.site-description {
color: silver;
font-size: 14px;
font-weight: bold;
padding-left: 104px;
}
When we wish to draw your attention to a particular part of a code block, the relevant lines or items are set in bold:
#logo {
float:left;
background:#e5e5e5;
display:inline-block;
padding:0