Joomla Notes
Joomla Notes
Joomla Notes
Our tutorial will include all the basic and advanced topics of Joomla that will guide you
on how to create websites with ease. This tutorial is separated into different parts
such as Joomla Basics, Joomla Menus, Joomla Modules, Joomla Global Settings, and
Joomla Advanced containing all the related topics with the screenshots and examples.
What is Joomla?
Joomla is said to be one of the best open-source content management systems
(CMS) that can be used to build powerful websites and online applications. It is free,
extendable, and separated into front-end and back-end templates (runs from
administrator side). It is built on a model-view-controller framework which can be used
independently of the CMS.
Joomla is a platform which is based on PHP and MySQL. Joomla also supports third-
party extensions and templates, which allow us to make further customization to
meet specific requirements. It is open to anyone who wants to develop the extensions
and templates.
Joomla is the perfect tool that is easy to install and set up. There is no need to be an
advanced user to use Joomla. One can use it with little knowledge of HTML and CSS.
There are thousands of extensions available in the Joomla Extension Directory, which
can be applied to enhance the functionality. Joomla also contains a powerful
application framework that helps the developers to create sophisticated add-ons that
increase the power of Joomla into virtually unlimited directions.
The core Joomla framework helps developers to quickly and easily build:
Applications of Joomla
Joomla can be used for:
Advantages of Joomla
o It is a freely available open-source platform.
o It is quite simple to install and set up.
o It uses WYSIWYG (What You See Is What You Get) editor, which helps to
edit the content very easily.
o Almost all the browsers support it by default.
o It has an easy menu creation tool.
o It provides several templates and themes which are very flexible to use.
o It can be migrated to any server, and most of them work with any database.
o It has broad community support where it is easy to ask questions and receive
the solutions.
o It is based on PHP scripts, and so the compatibility issues will be limited while
using its framework.
o It ensures the security and safety of the data content and does not allow to edit
the data without administrator privileges.
Disadvantages of Joomla
o It has a compatibility issue when several modules, extensions, and plugins are
installed simultaneously.
o Some of the important plugins and modules for Joomla are paid ones.
o However, it has many modules, add-ons, and templates, and it is still limited for
more advanced users.
o It is quite complex and makes it difficult to get custom designs without
developer experience.
o It is not much SEO (Search Engine Optimization) friendly.
o It makes websites heavy to load and run, resulting in more time.
Prerequisite
Before you start this tutorial, we are assuming that you have the basic knowledge of
HTML and CSS. If you are not aware of the basic rules of HTML and CSS, then we
recommend you to go through our tutorials on HTML and CSS.
Features of Joomla
Joomla contains thousands of verified third-party extensions, which can be found on
Joomla extensions directory (i.e., extensions.joomla.org). There are several high-end
templates available, and most of them are free to use. However, there is also an
option to use paid themes that come with support. Templates are used to get different
types of user interfaces, which allow us to change the colors, font style, layouts, and
features, etc.
Multilingual
Joomla is one of the most popular and widely supported open source multilingual CMS
platforms in the world, which offers more than 70 languages. A website can be
created and presented in multiple languages, without even leaving the Joomla. It can
be done within the Joomla with the help of Joomla's core software. It helps the
creators to make websites much more accessible and reaching out to a much larger
audience.
Well-Supported
The team of Joomla is the combination of individuals, groups of world-class
developers, and business consultants who actively help at no cost in the forums.
There are several professional service providers available who can help develop,
maintain, and market your Joomla projects. The Joomla community itself includes a
vetted directory of such providers at the Joomla Resource Directory.
Easy Updates
There is always a challenge for the developers to keep the software up to date. Joomla
consists of an in-built updater to make the updation process easy for the users, and it
does not require any professional skills. It contains the "One Click Version Update"
feature, which is super easy to use.
The built-in updater also comes with the automated checker, which provides
notification if any update is there for your software. This feature also includes core
software and Joomla extension that utilize this feature. It is always the best thing to
keep the software up to date so that you can secure your web assets. Joomla also
sends an email notification if there is an availability of a new Joomla version.
Media Manager
The media manager is a tool that can be used for uploading, organizing, and
managing the media files and folders. It is also possible to handle more types of files
with the help of configurable MIME settings. The media manager is integrated into the
Article Editor, and it makes it easy for the users to access the images and all the other
media files for enhancement of the written content.
Contact Management
The contact management tool provides you an option to add several contacts,
departments, and categories. It is useful because it extends the basic contact
information with miscellaneous data as well as an image. You can set up a contact
form for each contact that you create. You can either allow access publicly or just to
some registered users or create a list of the selected contacts.
Search
A built-in search tool or smart search feature will help the visitors to find the
appropriate information on your website with ease. You can also analyze the
requirements of the users and streamline your content even better to serve them. You
also get an option to use the included smart indexing, advanced search options, and
auto-suggest searches, etc. These are the features that make the Joomla search tool a
professional search engine tool.
Content Management
Joomla is a Content management system and contains some excellent features that
help the users organizing and managing the content efficiently. It is very easy to
create the content using WYSIWYG (What You See Is What You Get) editor. It is
easy to use and allows users to edit the content without any knowledge of code. After
the content is created, you can use different pre-installed modules to show popular
articles, latest articles or related topics, etc. You are not required to learn any syntax
or remember the module details to manage the contents as the user interface
performs it for you.
Administrators have the authority to add custom fields to the articles, as well as the
users, contacts, and extensions.
Frontend Editing
Editing the content is very easy and fast. Assume that you are reading through your
website, and you see any mistake or any other change that you want to make. You
don't need to login to the administrative section for simple edits of contents and
modules. You can simply perform it from the frontend by using the 'edit' option.
Powerful Extensibility
Joomla has a powerful extensibility feature. You can get over 7500 extensions to
extend your website and broaden its functionality. You can use Joomla extension
finder or Joomla Extensions Directory to get several ways to enhance Joomla as per
your needs.
Architecture of Joomla
Joomla is written in PHP and based on MVC (Model-View-Controller) design pattern. It
uses MySQL (MS SQL version 2.5 or above, and PostgreSQL version 3.0 or above) to
store data. There are various features (e.g., page caching, blogs, polls, language
internationalization support, and RSS feeds, etc.), which make Joomla an excellent
choice for CMS (Content Management System).
o Database
o Joomla Framework
o Components
o Modules
o Plugin
o Templates
o Web Server
Database
The Database consists of data except image files and documents which can be stored,
manipulated, and organized in a specific manner. It includes the user information,
content, and other required data of the site. It also contains the administrative
information so that an admin can securely access the site and manage it. Joomla
database layer is one of the most important factors which ensure the maximum
flexibility and compatibility for the extension.
Joomla Framework
The Joomla Framework contains the collection of open-source software
libraries/packages, on which Joomla content management system is built on. There is
no need to install the Joomla Framework to use the CMS or vice-versa. Joomla
Framework provides a group of files which is useful to create both web and command-
line applications. It breaks the framework into single modular packages, and further, it
helps each package to develop more easily.
Components
Components are referred to as mini-applications which contain two parts:
o Administrator
o Site
Whenever a page is loaded, the component is called to render the body of the main
page. The Administrator part manages the different aspects of the component, and
the site part helps in rendering the page when any site visitor makes a request.
Components are known as the important functional units of Joomla.
Modules
Modules can be defined as the lightweight extensions used to render pages in Joomla.
They are used to display new data from the component. They can stand on its own
and are managed by the 'Module Manager', which is itself a component. They look
like boxes, such as the login module. They also help to display the new content and
images when the module is linked to Joomla components.
Plugin
The Plugin can be explained as a very flexible and powerful Joomla extension, used to
extend the framework. Plugins are few codes that execute on occasion of specific
event triggers. It is generally used to format the output of a component or module
when a page is developed. The plugin functions which are associated with an event
are commonly executed in a sequence whenever a particular event occurs.
Templates
Templates are used to manage the look of the Joomla websites. There are basically
two types of templates available; Front-end and Back-end. The Front-end template
is a way to manage the look of the website, which is seen by the users. The Back-end
template is used to manage or control the functions by the administrator. Templates
are the easiest way to build or customize the site. They are used to add maximum
flexibility to make your site look attractive.
Web Server
It is a server used to connect users to the site. It provides web pages to the client. The
HTTP (HyperText Transfer Protocol) is used to communicate between the client and
the server. Lastly, a website is that where you and your users interact with.
Joomla Installation on Windows
Generally, Joomla is installed on systems based on Linux distributions, including
Ubuntu with either LAMP or LEMP stack. However, you can install Joomla on Microsoft
Windows Desktops and servers with the help of some open source projects. There are
several such open-source projects available. One of those projects is XAMPP, which is
freely available, easy to install Apache distribution. XAMPP contains MariaDB, PHP,
and Perl.
Let's discuss the step by step procedure for Joomla installation on Windows platform:
Installation
In this article, we are installing Joomla on the localhost. Although, you can follow the
same procedure for installing it on an actual live server, go through all the steps:
Firstly, you are required to download XAMPP from the link given
below: https://www.apachefriends.org/index.html
Just download the valid Windows installer of XAMPP and install it by running the
installer package. It can be installed easily, just like the other windows software. It is
suggested to use the default location for installation.
Note: While preparing this tutorial, the latest version of XAMPP is 7.3.10.
When the installation is done, launch the XAMPP software. It should look like this:
Now, you have to activate the XAMPP software by turning on the options, shown in the
above screenshot.
Extract the downloaded file and copy all the files into the 'htdocs' folder, which is
available in the XAMPP installation directory. You can also create the subdirectory and
copy all the files into that subdirectory. Here, we are using a subdirectory 'Joomla'.
1. This PC > Local Disk (C:) > xampp > htdocs > Joomla
You need to upload the compressed file to your domains' root and extract it. You can
perform it using a file manager or using an FTP client. Most of the hosts provide web-
based file managers for day to day tasks. By default, these files should be appeared in
the public_html directory (usually a root folder).
Before installing the Joomla, you will need to create a database that you can use to
connect. To do this, open a browser and navigate to localhost/phpmyadmin. Click
on the tab named 'Databases' which is available at the top of the page. Put a name
that you want to use as a name for the database and click on the 'create' button.
To create on a live server, navigate through your control panel, and open Databases
> MySQL Databases section. Create your database name, user id, and password.
Keep remembering the name of the database that you created because it will be
required during the Joomla installation.
Now, you are required to complete three basic steps to install Joomla onto your
computer:
o Main Configuration
o Database Configuration
o Finalize Joomla Installation
Main Configuration
Once you navigate to an appropriate link, you will be taken to the main page of
Joomla web installer. Here, you are required to add the necessary information about
the site and administrator, such as:
o Select Language: Select your own language from the drop-down menu.
o Site Name: Create the name of your site.
o Description: Type the description of your site in short.
o Site Offline: Make your site online or keep offline. Choose 'Yes' for 'offline' and 'No' for
'online'.
o Admin Email: Type a valid email address that you want to use for your site.
o Admin Username: Type 'admin' as default username or make a custom username.
o Admin Password: Type your own password for your site.
o Confirm Admin Password: Re-type the same password that you used above.
o Click on the 'Next' button to continue into 'Database Configuration'.
Database Configuration
This page contains the following data:
Overview
o Finalization: You can install sample data by clicking on the appropriate selection.
o Overview: This section shows all the information that you configured in previous steps.
Just review all the information and click on the 'Install' button.
As soon as the installation finishes, you just need to click on the button "Remove
installation folder" to complete the installation process. You can either click on
'Site' to check your site or 'Administrator' to access the administration area.
When you have completed the installation, you are ready to open the front-end and
back-end of your website. Either click on 'Open Site' or type your domain in the
browser's address bar to open the front-end of your site. If you have logged in into
your account, then you can directly edit the options from the front-end view.
To access the back-end of your Site, you are required to navigate a URL
as http://localhost//administrator/index.php. Then, you need to log in with your Joomla
account details.