In this chapter there is a little bit of history, a little bit of future, and a lot about where the Joomla! Project is right now, including how it is organized and how to navigate through the Joomlashere. Over the years since the project started in 2005, there has been tremendous growth both of the code base and of the community that supports, works with, and contributes to the code.As with a number of open source projects, Joomla! is more than just about code; it is about the people and culture that surround it.
Joomla! is used by people all over the world to create millions of Web sites. It powers sites ranging from personal blogs to large corporate infrastructures and Web brands. It is easy to use and administer for novice Webmasters and flexible enough to be used for complex Web solutions.
A lot more than installing and configuring Joomla! goes into creating an online presence, and over our years of contributing to Joomla!, a number of questions and subjects have come up repeatedly that aren’t Joomla! specific but are more about the basics of where to begin or how to correct a mistake that may have been made before Joomla! was even installed. These are some of the same topics that you would discuss with a Web professional when creating a site. Doing it yourself is no excuse for skipping over them. This chapter aims to answer those common questions and address some of the issues that may be quite confusing for those who are very new to running their own Web site. Experienced users may also be inspired to take a look at their Web strategy to see whether it needs an improvement or update.
This chapter will explain how to download and manually install Joomla! and will explain the basic configuration options. The screenshots and instructions will reference a common Web hosting control panel called Cpanel. Cpanel is an interface that allows users to control the various functionalities of their hosting account. A number of hosts have their own hosting control panel account interfaces that are similar to Cpanel, and your host will have documentation that shows you the equivalent actions and functions that we describe in this walk-through.
The main functions we will be referencing are creating a database, accessing phpMyAdmin, and using File Manager. If your host does not use Cpanel, please refer to the documentation for each of those functionalities that your host has available to familiarize yourself with them before proceeding. Also note that some hosts may limit your ability to create databases or your access to phpMyAdmin. In that case, you will have to contact your host to get the database name, database username, and database password. You should make sure that the database character set is UTF-8 and the collation is utf8_general_ci. Having the database set to this character set and collation gives the broadest available use of numerals, alphabetic characters, and symbols across many languages.
In Chapter 2 we discussed how to choose a good host for Joomla! and what the minimum requirements are for running Joomla! This chapter requires that those best practices have been followed and that the host offers an optimal environment for running Joomla!
This chapter will explain the basic configuration options for your Joomla! site. Although Joomla! installs with default settings for all configuration options, it is important to understand them and to adjust them as appropriate for your site.
Now that you have a basic Web site installed, you are ready to start organizing the content of your site using Joomla! In this chapter we will explain the use of the Joomla! Content component to create articles and organize them into categories. We will demonstrate key features and procedures. The patterns you learn in the Content component will apply in other components.
A lot of the power behind Joomla! is the ability for developers and users to extend and build on its framework and functionalities. Chapter 1 described what extensions are and defined components, modules and plugins. Another extension type is installable language packs, which translate the common text used throughout Joomla! and in components, modules, and plugins into other languages.
Joomla! comes with a number of built-in extensions such as the Web Links component, the Latest News module, and the TinyMCE Editor plugin. You can extend the functionality of your site by installing additional extensions that are produced by independent developers. This chapter will discuss best practices in using the core extensions, choosing additional extensions, using the Joomla! Extensions Directory, and installing extensions, as well as give you recommendations for some very useful extensions that every site can benefit from or that are extremely popular in the Joomlasphere.
Joomla! templates control the design of your site: how the site looks in terms of colors, typography, and icons and how components, modules, and other elements are laid out on a Web page. In this chapter we will examine how to work with the built-in features of ready-made templates and how to customize existing templates. Templates use HTML, CSS, and PHP to control the appearance of your site, and we will introduce you to the basic concepts of each.
After Joomla! itself and your site content, templates are the most important aspect of your Joomla! site. In this chapter we will explain the details of templates in more depth by taking you through the steps of creating your own simple template. To build the template we will take advantage of Twitter Bootstrap, which forms the basis of the Joomla! user interface package beginning with Joomla! 3. However, the concepts and procedures are exactly the same whether or not you use Bootstrap.
Once your Web site is created and online, the work doesn’t stop. It is important to note that being the administrator of a Web site means ongoing work to keep it updated, keep your content fresh, advertise and market it, and keep your visitors engaged. Depending on what type of site you have created, the workload may be more or less, but all Web site administrators need to take an active approach to maintaining their Web site. This chapter will explain some best practices and simple steps to keep up your Web site and to continue growing your visitor exposure and brand reach.
Keeping both your Joomla! installation and the extensions that you have added up-to-date is an essential part of managing your site. The biggest security threat to any Web site comes from allowing the software on which it runs to become out-of-date. Fortunately, Joomla! makes it relatively easy to maintain your software.
Free and open source software (FOSS) is good for businesses on a number of levels. Initially, the greatness comes from the price point. Low or no cost can make a difference in the overall bottom line of a business. The other advantage is in terms of support. Most FOSS software projects have communities of users and developers who can support the user base. Joomla! is an excellent example of how a FOSS software community creates, distributes, and supports a software project. Because Joomla! is open source, at any time you can view, edit, and add to the source code to suit your own purposes. You also can hire someone to do that for you.
The other advantage to business that Joomla! offers is the number of extensions that are available that extend Joomla!’s functionality, ranging from full-blown e-commerce to client/customer management or data gathering and tracking. This chapter will look at a few practical applications for business and examples of extensions that they would use.
For the same reasons we mentioned in the previous chapter with regard to business applications, Joomla! is an excellent choice for nongovernmental organizations (NGOs), nonprofit organizations (NPOs), groups, clubs, and organizations: it is free in cost and the code is open source. One of the benefits of Joomla! specifically for this application is the collaborative environments that can be set up to help organizations not only connect and organize within their constituencies but also reach out to the greater public and promote their platform or message, gain financial support, and connect like-minded people to achieve a common idea or goal
School Web sites present challenges that are often more complex than those for other kinds of organizations. Unlike a small business or nonprofit with a new Web site, a school starts with a ready-made target audience and most likely is not focused on expanding much beyond that audience. Schools have many different constituencies and a variety of communication needs. By following the same basic principles of planning as for all Web sites, an educational institution can create an effective communication portal that fits its needs.
The Joomla! Project is filled with people with expertise in all kinds of areas. Both we and Joomla! have benefited greatly from their knowledge and experiences. Getting to know them and working with them on various tasks has enriched our knowledge and understanding of many of the issues touched in this book. We can’t introduce you personally, but we have brought together participants in the Joomlasphere to talk personally about the project, their involvement, and their experiences working with Joomla!
If you follow the instructions in this book, you will avoid most common prob- lems. However, sometimes things go wrong. Here are the most common issues we see and how to solve them.
There are many resources for helping you make and improve your site. We have gathered a few of them that we have found useful here, but as you gain experience as a Web site administrator, you will find many more. The Joomla! community is always sharing links, advice, and information about various sites in the social networking sphere. Join Joomla! on Facebook, Twitter, and on the People site (http://people.joomla.org).
These are terms that people use when talking about Joomla!, whether in this book, on the Joomla! forums, at a JUG meeting, or during a Joomla! Day. This glossary should help you understand better what people mean when they talk about Joomla!