FREE visual builder for Joomla! Try Quix 2 today

How to Make Your Joomla! Site GDPR Friendly


Thanks to Joomla for introducing the new privacy tool suit in response to the rules such as General Data Protection Regulation (GDPR) in Joomla 3.9. In this following section, you'll find all the information about how to set up these new extensions and make your site GDPR friendly.

ThemeXpert is always concerned about clients privacy. So we updated our system to maintain clients privacy with their consent. Our policy stands for both old and new clients. 

What is GDPR?

GDPR is the new rules design to give European Union citizens more control over their data. It is needed to set cookies under users consent to make sure the privacy of the user is not compromised.

How to make Joomla Website GDPR Friendly?

1. Privacy Dashboard

The privacy dashboard provides the summary of information requested for the website representing the status of actions to be taken. The privacy dashboard is situated right under the 'User' Menu link.

a. Request Count

The request count is more like the privacy dashboard. It represents the summary of the information on a website.

b. Health Check Module

With the help of health check module the status of several actions recommended to site owners is checked, as it relates integrating the privacy tools regarding the website, including:

  • Privacy Policy Published - it will check if the privacy policy has been configured and published or not. Developers can check the integration through onPrivacyCheckPrivayPoilicyPublished event.

  • Request Form Menu Item Published - this will check if the front-end information request form has a published menu item or not to the authenticated users submit valid request.

  • Outstanding Urgent Request - This option will check for any pending confirmed requests, which are older than 14 days and it will be alerted to the owner of the site for any such requests which requires urgent attention. 

2. Extension Capabilities

This screen displays the capabilities of privacy policy related informations (such as cookies to set on browser, information shared with the third party for future usage, personal data processing etc) to assist the user assessing extensions regarding privacy policy related concerns and preparing documentation of terms and policy service. To know more, checkout Report Extension Capabilities in Privacy Component.

3. Information Requests

Processing and managing user information request is located here. You can know more about in Information Request Workflow in Privacy Component.

Privacy Consent​ Plugin Setup

While collecting personal identifiable information, you need ensure the following terms:

  • The user is informed about the need of the information in clear understanding word.
  • The user should be informed about the exact data you want to collect from them
  • The user should know in what purpose you'll be using their data
  • The user has actively agreed to your terms

But let me assure you one thing. This plugin DOES NOT make your website legally complaint. It's only just a step to the process.

After enabling the plugin, any new user registering on your site will be needed to consent the privacy policy. By this process, the date and IP address of the user will be recorded. And all the existing users will be redirected to their user profile for their consent.

1. Plugin Configuration

Now the plugin is installed but yet not active. To active it you need to follow these steps, Extension -> Plugin -> look for Privacy. Once you've located the plugin, configure it before enabling. 

2. Short Privacy Policy

This is a brief notice that will be displayed above the privacy consent checkbox. You can customize it to your own text or just leave the way as it is.

3. Privacy Article

If wish to have a longer Privacy Policy, you can create or edit it right in this section which will be displayed in the modal window of the user.

4. Redirect Message

This section is used for the existing users who have entered their profile first time right after privacy policy plugin has been enabled. You can use the default text or just use your own customized text.

User - Terms & Conditions​ Setup

1. Plugin Configuration

The plugin is installed but yet not enabled. To active it you need to follow these steps, Extension -> Plugin -> look for Terms. Once you've located it, you can customize it and enable it.  

2. Short Terms & Conditions

This is a short notice that will appear right above the Terms & Conditions checkbox. You can leave the default message to display or edit to your text.

3. Terms and Condition Article

If wish to have a longer Privacy Policy, you can create or edit it right in this section which will be displayed in the modal window of the user. 

Content - Confirm Consent

This plugin will add a required checkbox to a form (such as the core contact form). 

1. Plugin Configuration

The plugin is installed but yet not enabled. To active it you need to follow these steps, Extension -> Plugin -> look for Consent. Once you've located it, you can customize it and enable it.

2. Short Privacy Policy

This is a short notice that will appear right above the Terms & Conditions checkbox. You can leave the default message to display or edit to your text. 

3. Privacy Article

If wish to have a longer Privacy Policy, you can create or edit it right in this section which will be displayed in the modal window of the user.

Privacy Modules​ Setup

This module provides the summary of the information requests received for your website. This module is installed and enabled by default in Joomla 3.9 installation. To add it to your dashboard on an updated site, go to Extension -> Modules, change the site filter to Administrator, add a new Privacy Dashboard module, assign it to the cpanel position, and set access to Super Users


 The output will mostly look like this,


Follow all the steps described above and make your Joomla site GDPR friendly. If you still find any problem, please contact us. None are expert here but we all are trying our best to get to know GDPR better.

You can download for testing new privacy tool and report any issue.

Post your comment below and we'll do our best to reach out there and answer it.

A Complete Guide to Create Marketplace Ready Onepage Joomla Template


Let's pick the very first question most likely arising on your mind having seen the topic- Is that worth to create onepage templates for the marketplace?

Before I make any statement regarding this, I want you to have a quick peek at the following statistic information of onepagelove. It's a planet for onepage lovers, and more than hundred thousands of websites/ templates are there from the developers all over the world.

As you can see their traffic overview,- the monthly visitors is estimated 803K, Oh My Gosh!! and each of the template gets more than 2K views every day. It clearly defines people's craze about onepage templates, isn't it?

Now, think of another aspect- Simplicity.

Creating a onepage template is way less troublesome compare to multi-page, and requires less time to be built. Else, performing any modification or changes is easier as it involves just a single page. So, the pressure to deal with various pages having different purposes is no longer exists on a onepage site. 

❓ What is Called Onepage Template?

A one-page website is basically a single page that smartly combines all your business information within that page. A onepage website is able to get indexed by search engines way faster than a multi-page template. And you know the most glittering news is? Its popularity is continuously increasing due to the simplicity and usability.

Now, let's talk about some characteristics a onepage website should be present in. Like - Marvel Multipurpose onepage joomla template.

  • It should be Minimalistic, Simple and able to hold the user's attention to the most important content.
  • Menu navigation assigning each section with individuals - is important but not mandatory though.
  • Its entirely easy to update and quick to customize due to having just a single page..

So, for example- have a peek at the following onepage template and think- doesn't it seems to be satisfied all the criteria above?

It's not that- a onepage template isn't allowed to have any other pages in anyways, in fact- EU German Law stays opposite. It's a mentionable example that defines the exception case for a onepage template.

???? Impressum and EU German Law

According to EU German Law, every website (both multipage and onepage) should have the additional Impressum page. Impressum is a Latin word and alternately known as Imprint in USA. It basically legalizes the authorship of the site including all its content.

As per the Law, the following information to be covered on the Impressum page.

  1. Name of company
  2. Registered address
  3. Board of directors
  4. Contact details and
  5. Web address

Now, let's begin- how you can easily create onepage templates and sell them on various marketplaces. In this tutorial, I am going to show you creating a onepage template with one of our most popular Joomla templates.

Note that : this lesson is applicable for any of our template, meaning that- ​you can turn any of our Joomla templates into onepage template, just following the approaches I am going to mention below.

???? Requirements

The following stuffs you are going to need here.

  • T3 Framework
  • Quix Pagebuilder
  • Morph Joomla Template (optional but great starting point)
  • Akeeba Backup
  • singlepagenav.js (for smooth scrolling and onepage navigation system)

???? Installing Required Stuffs and Let's Begin

Before begin, install all required stuffs mentioned above. You can install T3 Framework,Quix PagebuilderMorph Joomla Template and Akeeba Backup using Joomla Native Installer with its intuitive Drag and Drop Interface. Absolutely no chance to face any trouble.

???? Step 1 : Creating a new Template

This is the very first step you should do before making any changes, although it's not mandatory. You can else override the existing template but- it's wise to create a new one and make all your required changes in it.

To create a new template, first duplicate an existing template then rename it as you prefer.

  • Go to Extensions> Templates and put check mark on an existing template. Click on the duplicate button at the top.

Image: Duplicating Template

  • Put the check mark on the just copied template, click on the Edit button at the top and it will open up the template customization module. 

Image: Renaming Duplicated Template

  • Rename the Style Name field and give your desired template name here. Click on the Save & Close button from the left-top in order to successfully save your new template. 

Image: Renaming Duplicated Template

  • Now, you are one step behind to proceed. What you need to do is- make your new template as the default template just by clicking on the Star icon as pointed in the screenshot below. 

Image: Setting Default Template

???? Step 2 : Adding new Sections

Quix lets you the flexibility to create sections, columns and customize the layout effortlessly. Here- I will not talk about Quix in detail. To explore Quix Customizability, you are always welcome to check our Video Tutorial page.

However, creating new sections is absolutely straightforward. 

Quix How To Tutorials

  • Go to Quix > Pages and click on the New button from left-top
  • Give a title on the empty title field and click on the ADD NEW SECTION

Image: Adding New Section

You can either add pre-ready sections from our library or add them manually. 

  • Let's make some beautiful sections. 

???? Step 3 : Renaming Section IDs according to Section Name

It is important to rename the section ids- according to the name of the sections. Although it's optional, it ensures the later frequent uses.

  • Click on Section Settings. From the advanced tab, modify and put a unique section id in the Id field. 

Image: Renaming Section ID's

  • Change all other section ids based on their name accordingly and hit the Save button at the top.

???? Step 4 : Creating Menus

Now, it's time to create a main menu in order to assign the homepage into then create menu items for each section. Its pretty simple, just to follow the straightforward steps mentioned below. Let's create the main menu first.

  • Go to Menus> Manage> Add New Menu
  • Give a suitable menu title, define the menu type on the corresponding field and click on Save & Close at the top.

Image: Creating Menu

  • Click on the newly created Menu and click on New button from the left-top to create menu items.
  • Put a title on the Menu Title field,
  • Click on the Select button next to the Menu Item Type option and choose Quix> Page
  • Click on the Select button next to the Select The Page option and choose the your Homepage- created by Quix a bit earlier.
  • Click on Save & Close button at top.
  • Click on the Star icon to make it as the default homepage as pointed on the screenshot below. 

Image: Setting Default Homepage for the Menu

  • Now, let's create the menu items for each sections. Go to Menus> Main Menu and click on the New button at left-top.
  • Give the menu title
  • Click on the Select button next to the Menu Item Type option and choose System Links > URL
  • On the Link field, put # symbol and click on Save & New button at the top to save and create another menu item.
  • Create the rest of the menu items (the number of sections you have) similarly.

⛓ Step 5 : Assigning each menu with the Corresponding Sections

You have to now assign the created menu items with the corresponding sections. It's beyond simple. But, you need to go back to the Quix page one more time- in order to take a look the section ids. Better- copy or well memorize them since its a must to put the exact section ids on the corresponding menu item's URL fields. 

  • Now, go to Menus> Main Menu and you can find the list of all menu items here.
  • Click on a menu item, on its Link field- put the section id with whom you want to assign the menu item.
  •  Assign the other menu items with the corresponding sections with the same procedure.

???? Step 6 : Enabling Sticky Header

Although, we're done creating our onepage template still we got a problem. When we scroll down the homepage or jump to a section, we can no more find the navigation menu and are to scroll again to hit another item from the navigation.

This situation can be handled by enabling the sticky header/ navigation menu. No worry, you needn't code for making a sticky header, so we did. You just have to enable, and that's it.

  • Go to Extensions > Template and click on the template that is currently set as default.
  • Under Template Options, you can find Sticky Header option. Set the option ON and save it.

Image: Enabling Sticky Header

Now you can find a sticky header at the top of the site which allows to jump to your desired section even while you scroll down to any other sections. 

???? Step 7 : Integrating singlepagenav.js (Optional)

You may still feel - the navigation between sections is still not that smooth and it's normal since we haven't yet applied any .js script to make it act so. But, the good news is- making navigation as smooth as you want is just a few second fact.

To do so, you require an additional singlepagenav.js file which can be found on google and absolutely free of cost. Download and rename it as singlepagenav.js and follow further approach below.

  • Go to Extensions> Templates
  • Put the checkmark to the currently used template and click on template name under Template column and it will take you to its source files.
  • Click on the etc folder from the list of resource folders at left, and you can find assets.xml file as soon as etc expands.
  • Click on the assets.xml file and it will take you to its edit mode.
  • Paste the following script between <scripts> and </scripts>

  • Now, click on New File button at the top and select the folder js from the list of recourse folder at left.
  • Select the singlepagenav.js file using the Choose button and click on the Upload button next to it.

  • Save and close the window using Save & Close button. 

???? Step 8 : Exporting QuickStart Package

You're all done creating your desired onepage template, just step behind. You are to create the package file includes all the demo data does have in your onepage template. It allows the users to install your template along with the demo data you put in it.

However, preparing QuickStart (template including demo data) package is pretty simple. Akeeba Backup is one of the most popular tool for this purpose. It required to be installed before you start making the QuickStart package. Find the steps below.

  • Go to Components> Akeeba Backup and click on Backup Now button.

Image: Exporting QuickStart Package

  • You'll find another Backup Now button on the next screen. As soon as you click on it, the QuickStart package generating process will begin that takes a few moments depending on the amount of content you've put on your template. 

Image: Exporting QuickStart Package

Once the process is done, you would be notified with a successfully completion message. Besides, you can find a Manage Backup button within the same window. Now, what you have to do is to- download the backed-up file and rename as or as you prefer. 

  • Click on the Manage Backup button

Image: Downloading Exported File

  • Click on the Download button and it will let you download the backed-up file which is literally the QuickStart package. After the download is done, rename it as you prefer and you're done. 

Image: Downloading Exported File

???? Front-end Appearance

✅ Preparing for Marketplace

Now, you are ready to submit your onepage template on a marketplace to sell. But, you might have concerned about- every marketplace has some prerequisites to submit a product. Well, don't get panic; I'm here to guide you through the entire process step by step for Envato marketplace. But, before going through the process, let's have a look on the requirements for themeforest.  

???? Requirements (themeforest)

  1. Package File
  2. Preview Image
  3. Thumbnail Image
  4. Presentation Copy
  5. Live Demo Link

⌛️ Step 1 : Creating the package file

 To create the template package file-

  • Go to your template installation directory
  • Double Click on your template and inside your template folder- find a folder named templates

Image: Creating Package File for Envato Market

  • Right click on tx_morph and select Send to > Compressed (zipped) folder 

Image: Creating Package File for Envato Market

This may take 2 or 3 seconds at best, and the process is done means you have the theme package on your hand to submit. 

???? Step 2 : Create an account and Submit

Congrest! You're about to finish, just one step behind. If you have an existing envato account- sign in or create a new envato account. After logged in-

  • Go to Dashboard> Upload and select CMS Themes from the dropdown and hit Next button. 

Image: Submitting Theme on Envato Market

Put all the information according to your template and, click on the Upload button at bottom-right. That's all you have to do.  


Once you're done submitting, wait few days for further feedback. They will thoroughly go through your template including the presentation copy and other documents you attached with the template in order to ensure- there is no issue exists. At the same time, they will make you concern if any changing is needed.

This process depends on how many tasks they usually handle a day, and how many are currently on their hand. So, keep patient waiting for the review. Happy Earning.. :-) 

Used Resources

The Beginner's Guide to Secure Joomla Website


Joomla is the second most popular cms on the planet and naturally subjected to all kinds of hacking attacks. Hackers always try to find vulnerabilities and security holes of your website. One single safety issue can cost you a huge loss and cost much money. So it is very much important to take all sorts of security measures and make secure Joomla site of yours. 

We learned this lesson in hard way and we've created a details guide on how to fix your hacked Joomla site.

In this post, I will show you 16 different strategies and teach you - how to secure Joomla website by yourself. It is necessary to mention that these security measures might not give you 100% protection against hackers. Because a fully 100% secure Joomla site does not exist, but these measures will protect you from the majority of attacks.

We reached out to Joomla experts and asked them about 'importance of website security' and how this will guide help you to secure Joomla site of yours.

When you are building a website or web application, security should be foremost on your mind. Joomla gives you a great head start but can you get you where you need to be with the right awareness and actions ! This guide from ThemeXpert gets you a fantastic start on where you need to be!

Parth Lawate
CEO, TechJoomla

???? Keep Joomla Version, Extension & Plugin Up-To-Date

One of the essential part to have a secure Joomla site is to update it to the latest version. A backdated version of Joomla or any other extensions and plugins is a doorway for hackers to log into your system. Every version update comes with some bug fixes and enhancement in security.

For updating the software, you have to go to updates option from the administration area. If you use any Joomla extension, we recommend you to keep them updated. 

???? Use Strong Password

A very common security hole is weak login details. It is very easy to crack id and passwords from weak login details and is known as "Brute Forcing." Don't leave the admin account as "admin" and easy passwords. If a hacker manages to login to your site as admin, every security can be compromised, and you might fall into great trouble.

It is wise to use an email address as administrative account id. For password length is a serious issue and the minimum length of a password should be at least 8 characters long. A long length password gives much more security than a short password.

If you want, you can use a combination of numerical, upper case letter, lower case letters and special characters to make your password more strong.  Strong id and password make your site less vulnerable to brute force attacks. 

​ Take Regular Backup

When anything goes wrong, backup always saves your back. You should make backup archives of your files and databases regularly, so in time of need, you can recover from backup files.

You should try hosting your site with a reputed company which provides backup. Alternatively, you can use backup extensions, such as Akeeba BackupEasy Joomla Backup. These extensions will provide you automatic scheduled backup with many features.

???? Protect your Administrative Page

The protection of your Joomla site can be greatly improved by restricting access to your administrator area. The two most popular ways to achieve are to replace the URL of login page or to password protect the admin panel. It is very much easy to change the login page URL with extensions like Admin tools, RSFirewall.

You can password protect your administrator page by locking it. It can be done from cpanel main page. From there you add password protection to your admin page. After setting up a password, you have to provide the password each time you want to access your admin page.

Additionally, you can restrict users by using their IP to access the admin page. From .htaccess file change x.x.x.x with your IP address, and then save it. Then users with allowed IP addresses can access Administrator page.

`Deny from ALL`

`Allow from x.x.x.x` 

????​ Use Security Extensions

If you are worried about your site protection and want to harden the security than you can use security extension. Security extensions allow you to block hacker attacks and close security holes of your Joomla site. You can find many security extensions, but before installing you should choose carefully by checking features, reviews, price, and support.

We have listed 9 security extensions. You can also try for free extensions, but it is recommended to use pro extensions. When you use security extensions, it is recommended to configure correctly, unless your site may behave unusually.

????​ Secure Login with two-factor Authentication Code

Your Joomla website security more strong by using two-factor authentication code. If anyone somehow manages to know your password, he will still require the authentication code to log in. Without two-factor authentication code login is not possible. The two-factor authentication code is also called OTP (One-time password). 

????​ Do not Download Premium Items for Free

Though I completely understand what it is like to be a business person with limited funds, it is just not a good idea to download premium extensions, plugins or any items for free from local pages.

You might often find this downloads corrupted or infected with malware. If your downloaded file is infected then, a hacker can access your site's backend directly. Then instead of saving money, you will be spending money for recovering your site.

So it is not wise to use any premium extension or plugins for free.

 Disable FTP Layer

​Ftp layer is a major security hole in Joomla. In most cases FTP layer is not needed in Joomla and it comes disabled by default. If you enable ftp layer for any reason, we recommend it to disable right after use. You can enable or disable FTP layer from Global Configuration under server tab. 

????​ Use Proper File and Directory Permissions

Managing permission is very important in a Joomla website. Never give full access or permission 777. The wrong CHMOD may grant access to hackers. For folders use 755, for files use 644 and for configuration.php file use 444.  

????​ Choose Host Carefully

Good hosting not only costs money but also gives you some extra security and feature. That is not provided by cheap hosting sites. Sometimes due to server configuration of the host, the security of your site might be compromised.

So it is very much necessary to choose hosting site carefully. 

????​ Install and User SSL Certification

SSL certification provides an extra layer of protection to your website. Whenever a user sign into a site, his username, and password is sent directly to the server without any encryption or decryption. By using SSL certificate, user's id and password are encrypted before sending over the internet.  

So, if anyone catches any packets of login details, it will be of no use without decryption.

????​ Rewrite the htaccess File

By default, Joomla has a file that helps your site from exploiting against a set of common exploits. By default, this directive in the .htaccess file is not enabled. You have to locate and make sure you rename "htaccess.txt" to ".htaccess."  

Force to Use Secure Password​ ????

For increasing login security, it is recommended to make sure every user uses a strong password. However, some of us do not like long, strong passwords. So at the time of registration, you can force users to use passwords with minimum length of 8 characters. 

You can also give hint to user, to use combination of different types of characters like uppercase, lowercase, numeric and special characters.  

????​ Enable Search Engine Friendly

 Joomla URL tells much about the page being visited and what components are being used. Using this information, a hacker can attack your site. By enabling Search Engine Friendly, you can mask your Joomla URLs from the visitor. SEF component makes it harder to find security vulnerabilities for hackers.

SEF deactivated URL :

SEF activated URL:

???? Delete Unnecessary Extensions

As an administrator, you might try new extensions for trying new functionalities. However, it is not recommended to try new extensions without knowing. As extension provide facilities, it can also be the reason of vulnerabilities for your Joomla security.

By using these vulnerabilities, your site can be easily SQL injected by a hacker. Removing unnecessary extensions is important. The fewer extensions you have installed, the faster your site will load. 

Update PHP Versions

Obsolete version of any program can make your Joomla website security vulnerable. It is important to check if you are running a secure version of PHP. You can check your version of your PHP from "System Information" in System menu. Official support for PHP version till 5.6.0 is ended officially.

So if you find your PHP version is less than 5.6.0, we recommend you that you submit a support ticket to your host provider and request for a secure PHP version. The latest version of PHP comes with previous Joomla website security fixes, so it is always advised to use most recent version of PHP. 


By following this step, you drop your chances of being hacked. It can take a bit of your time to work through these steps, but if you review Joomla security forums, you can find many stories of people wasted days struggling with hacked websites.

Let us know your thoughts. You can always give feedback by commenting below. 

Practical Guide to Secure Joomla Websites

Practical Guide to Secure Joomla Websites

The popularity of Joomla grows day by day as an open source CMS (Content Management System).

Besides the popularity, more and more individuals and businesses of all sizes start to rely on this open source CMS and get their products and services through the online.

In fact, more than 2.5 percent of websites are now running on a Joomla CMS. The latest research by SUCURI reveals that - Joomla is the second largest CMS downloaded over 68 million times and the second infected website platform.

The bad guys or hackers may try all kinds of hacking methods to attack your site or bring down your site. These range from remote file inclusion to cross-site scripting to the ever-popular SQL injection.

As the admin, you have the responsibility to ensuring your Joomla site is properly patched, updated and secure.

A properly configured instance of Joomla CMS on a properly configured server is about as secure as any other off-the-shelf solution.

In today's post, I am going to discuss the best practices to secure a Joomla website. Let's dig into it!

Best Practices to Secure Your Joomla Website

Use the Latest Version of Joomla & Extensions

Website owners don’t upgrade or maybe forget to upgrade to the latest version in most of the times, which creates a significant risk.

Almost in every release, Joomla has fixed some security issues. So if you don't upgrade to the latest version means you are keeping some vulnerability on your website.

Use Strong Password for Secure Administrator Login

In most cases, people leave the default administrator account as the user name to “admin” and a silly password which is easily guessable and creates the biggest risk.

If you are keeping the default “admin” and a guessable password, you subconsciously helping the hacker in their job.

Delete Unwanted & Unsecured Extensions

Joomla is open source CMS and as an administrator, you may install many modules or extensions to try out new functionality in your site.

It’s good to improve the functionality, but the bad thing is when you install a low-quality extension that will create flaws in your site.

So, delete the extensions, which you are not going to use.

Take Backup Regularly

Backup is the life-saving process. In case of, when things go wrong, backup is probably one of the quickest and best way to restore your online business operations.

You should host your website in a reliable hosting company like SiteGround, who provides a good backup plan. Along with hosting backup, you may use an extension like Akeeba backup.

Monitor your Joomla Site

If your website goes down or defaced then how do you know?

Use the StatusCake tool which monitors your website and notifies you through the email, slack or SMS when if website is not reachable.

This is a free tool and you can take necessary actions immediately if needed.

Use a Powerful Security Extensions

Use a powerful extension that can fight against spam, known vulnerabilities, and known attacks like brute force attack, SQL Injections.

There are many and security extensions available for Joomla in the Joomla extensions directory. Amongst them, R Antispam, Incapsula, and Security Check are best and effective ones. You may use one from these.

Implement Two-Factor Authentication

Two-Factor Authentication is an extra security layer that requires not only a username and password from the user but also require something that only, and only, that user has on them.

It will be a piece of information only the user should know or have immediately to hand such as a physical token or a random generated OTP (One Time Password).

OTP is a six numeric digit code that generated by cryptographic functions in a short interval. Even if the hacker will get your Joomla administrator username and password, they would still require the OTP to logged in the system.

If you want to enable the Two-Factor Authentication, it requires Joomla 3.2.0 or higher version.

The steps to enable Two-Factor Authentication:

  • Step 1: Login to the administration panel
  • Step 2: Click on Components >> Post-installation Messages
  • Step 3: Click on Enable two-factor authentication
  • Step 4: Install a Google Authenticator compatible client for your device

Use SSL Certification

Use SSL certificate on your site and force Joomla into SSL mode.

Before enable SSL mode be sure that you have configured SSL certificate for your site’s domain, or you will not be able to enable this feature.

When you use an SSL certificate on your website, it will encrypt the user’s username and password before sent to your server over the internet.

Read our blog post to know - How To Enable SSL On Joomla Website?

Last Words

If you follow these steps, the chances to be hacked your Joomla website is decreased and your site will be more secure than past. And you’ll be able to recover your site quickly than ever if it will be hacked.

I hope this helps you! Share your tips with us if those are not listed here.

9 Simple Tricks to Improve Joomla SEO Ranking


Online marketing is the most competitive place to walk through.

Therefore SEO became the crucial need for any business to survive in this field. Whatever your business is, SEO will help you to grow your business and meet the objective.

Today millions of users search their query in the search engine, and the search engine serves them the answers or solutions to them.

SEO is the way to optimize your site that search engine can understand it better and therefore give you the higher place in the search result.

Every day there is a countless website set on the internet and thousands of them built with Joomla. Therefore SEO for Joomla is very much important.

So, you should ensure at least the very basic issues that your website is search engine friendly.

Best Ways to Improve SEO for Joomla

Here is the list of Joomla SEO Tips. This Joomla SEO tips ensures the best optimization and make sure your Joomla website place on the top in the search result.

1. Enable Search Engine Friendly URLs

In your Joomla administration area navigate to System -> Global Configuration. In the opening window, you will see an "SEO Settings" section.

From a few configuration options enable "Search Engine Friendly URLs".

This search engine friendly URL option is the setting that removes all the dynamically generated URL and replaces the URL with the alias of the menu item that you're using on the page.


2. Enable URL Rewriting

The next option you will see at the next of the search engine friendly URL option is, "Use URL Rewriting". Now enable this option also. This setting will remove the /index.php/ from the URL.

3. Rename htaccess.txt to .htaccess

As you enable URL rewriting option to make the URL's a whole lot more attractive than they start out, you should rename the htaccess.txt file to .htaccess

4. Improve Your Meta Description


A careful implementation of meta description and meta keywords have an enormously positive effect in SEO for Joomla. So, you should not ignore this section.

To go this way, just scroll down in the Global Configuration window and here you will see the section called "Metadata Settings".

Put your website's meta description and meta keywords in the desired field.

Your meta description should not more than 160 characters including space and punctuation and try to make it informative, compelling and concise.

And then select "Index, Follow" in the Robots option.

5. Optimize Robots.txt File & Optimize Your Images

The purpose of a robots.txt file is to inform the search engine bot about the files that you don't want to index.

Joomla has automatically generated a robots.txt file at the time of installation. It includes a disallow rule for the images directory that is instructing the search engine not to index the image folder.

But you know images can generate a chunk of traffic from the search engine. That is why you should remove the following line from your robots.txt file.


Now your images will also index by the search engine bot.

6. Enable Gzip


Navigate System -> Global Configuration.

In the opening window, select the "Server" tab and here you will see the "Server Settings" option. From the choices in this section enable "GZip Page Compression".

It is a good way to speed the load times of your site by compression the codes of your site.

7. Install a Good Sitemap

The purpose of using a sitemap is to spell out the contents of your site and show the information to both search engine spider and users that where they will find their desired things.

A Joomla extension will help you to generate the XML and HTML sitemap for your site. You can use OSMap or JSitemap to go this way. Both of this plugins are lightweight, fast and robust.

8. Use one of Good Joomla SEO Extensions

One of the good Joomla SEO extensions will make your life easier. With a third party solid Joomla SEO extension, it will be lot easier to implement the SEO settings. The following are the best free Joomla SEO extensions.

9. Submit to Webmaster Tools

You must submit your sitemap to the Google Webmaster and Bing Webmaster.

I am not going to delve the details of webmaster tools in here, just want to share that - if you want to monitor how you are doing in your SEO the Google Webmaster known as Google Search Console is an invaluable tool for you.

Wrapping Up

Hope you have find this article helpful. Have you got any other tips and tricks for optimizing a Joomla site for the search engine? If yes, Give us a shout!

The Beginner's Guide to Joomla Caching

The Beginner's Guide to Joomla Caching

Joomla is one of most popular, free, and open-source Content Management System (CMS), as well as a great online community around this CMS.

According to, it powers approximately 2.7% of the 1,000,000 largest websites in the world.

In general, Joomla is used for the sites those are slightly more static in nature, as well as it is suitable for more advanced utilities.

Joomla offers almost every configuration for its users. Today I am going to talk about Joomla Caching - the most discussed and desired topic of nowadays.

What is Caching?

Before go through the titled point let me give a little brief about caching.

A cache is a place in a computing environment to store something temporarily. And the word "Caching" refers to storing information locally to speed communication between a web browser and a web server.

It enables end users to accessed or re-use later at a point more quickly.

Joomla has some steps to start of caching.

A site administrators can take advantage of caching to reduce the amount of work required from Joomla and the web server by following these steps.

Step 1: Cache Settings

Navigate System -> Global Configuration -> System.

Here you will see an area called Cache Settings. Under this area, there have four more options. Navigate on "Cache" and choose one from the three options:

  • OFF - Caching Disabled
  • ON - Conservative Caching (smaller system cache)
  • ON - Progressive Caching (faster, bigger system cache, includes module renders cache)

Step 2: Cache Handler

Next, navigate on "Cache Handler" and select Cache_Lite.

Step 3: Cache Time

And the final setting in this area is on the "Cache Time" option. The more dynamic your site would be, the lower this time should be.

If you leave this field to 15 minutes, your page will only appear to change every 15 minutes. If you want to update your site more frequently, change this to a smaller time.

Step 4: Page Caching

Navigate Extensions -> Plug-in Manager -> System - Page Cache.

If it is not enabled, then enable this plugin otherwise leave it as before.

Step 5: Browser Caching

Again navigate Extensions -> Plug-in Manager.

Browse for the plugin System - Page Cache and hit on it. A new window will open. Select "Yes" from the Use Browser Caching option and press on "Save & Close" button from the top.

Now all is done.

Your Joomla site is ready for caching. Now with Joomla browser caching, every time somebody looks at a page or an image the browser keeps a copy of that page or image.

Then if a user requests that page again within a couple of time, rather than run out to the internet to grab a new copy, it just gives the user the locally saved version. This process will make your site feel much faster than before.


So, don't get late to configure the caching functionality your Joomla website. Hope this short, and specific tutorial will help you to do the best as well as speed up your site.

Let us know your opinion regarding this tutorial through the comment section in below and also share your experience and suggestion, we will warmly welcome your advice.

The Complete Guide to Building Multilingual Joomla Website

The Complete Guide to Building Multilingual Joomla Website

Translating your website into several languages will increase your audience notably.

Adding the multilingual functionality to your Joomla site is just a few instinctive steps away. Let me do it even easier for you.

This tutorial is going to show you how to configure a multi-language Joomla site. To perform this you need to go through the following steps:

  1. Install a new language
  2. Create a new content language with new parameters
  3. Enable Language Filter plugin
  4. Setting up Language Switcher module
  5. Create menu for every installed language
  6. Create menu module
  7. Multilingual articles

Step 1: Install a new language

At first, let's add the language files for the desired language we want to use as the second language on our site.

So, log in to your Joomla admin panel. Now, to install the language pack you need to navigate to Extensions -> Languages.

In the screen that opens, select "Install Languages".

Another screen will be opened, tick on your desired language pack and click "Install” button.

You will see your installed language packs in Extensions -> Languages -> Installed.

Step 2: Make a new content language with new parameters

The next step is to originate a content language.

Although you have already installed a second language, still you need to add the appropriate information for this languages.

In this step, you need to navigate to Extensions -> Languages -> Content Languages.

You will see here, the default content language, to add a new content language click the "New" button from the top menu.

A new screen will open, insert the required information according to the selected language.

Look at the image below. There are five required fields.

Title: This fields for language name that will display in the Joomla backend that you can assign a specific language for your articles, modules or other items.

Title Native: Here you insert the original language name which will display in the language manager and the list of content languages.

Language Tag: The language tag consists of the language code. If you are not sure about it, you can find it next to the language name in the list of installed languages at the language manager section.

URL Language Code: This is the code that will appear in the URL. For example, here I insert "de" hence, the URL will like this when I select Germany as the desired language.

Image Prefix: This is the language code. Joomla uses this code to display the country flag images enabling the visitors to select a site language.

Step 3: Enable Language Filter plugin

The language filter plugin enables the CMS to recognize the different installed languages and display only the content relevant to the current language.

Just navigate to Extensions -> Plugins and search for the “Language Filter” Plugin and enable it.

Also, enable the "Language Code" plugin. This plugin installed with the Joomla engine by default.

Step 4: Setting up Language Switcher module

You will also have to add a menu module to display the language list on your site.

Navigate to Extensions -> Modules, a new window will open. Click “New” and select “Language Switcher” from the list.

It will open an editing window.

Insert the title as it is required, though you have an option on hand to display the title or hide.

Set the position where the switcher module will visible and set the switcher status as public.

Look at the image below. A language switcher section is visible on the right sidebar.

Step 5: Create menu for every installed language

You will need to create menus for each content language to display multilingual content on your site.

To perform so navigate to Menus -> Manage -> Add new Menu.

After that insert the "Title" and "Menu Type" and hit the save button.

Do the same process for every content language that you wish to display on your site.

You will find all your created menus in Menus -> Manage later and also edit them.

So now you need to add items in each menu, the easiest way to perform is to open your main menu then select any item and then hit the "Batch" button top of the page.

In this process, we are going to copy all the menu items from the main menu to each menu.

A popup will open, you need to set the language to which you are going to copy the item and select the menu to where you want to copy this.

Check copy from radio button and press "Process". Once it was done, do that for each one.

Now you have a menu for every language and several items on it.

You can open each menu one by one, make an item to default page and edit them.

Step 6: Create menu module

Just navigate Extensions -> Modules then select a menu from the list.

In the module section, set position for selected menu.

In advanced section, insert "nav-pills" in the menu class suffix field.

And then in menu assignment section, select "Only on the pages selected" option.

It will display only the items which you want to show in your menubar.

So, uncheck the other languages menu items.

Step 7: Multilingual articles

Let's create a multilingual article to see how it works.

Create a new post, set the language of the post in the content section.

Make a copy of this post or make more copy as you want. Set different languages for each post.

And now again edit the post, go the "Associations" section, associate the post with the copy of this post.

Save and close it.

As a result, when you click a flag it will change both the menu and the articles to the desired language.

Look at the image below, how I associate the posts to each other.

So, we are at the finishing stage. Just take a look how it works.

Make this process easier with an extension:

In the first section, I talk about the manual process.

Now here, in the second section, I'll show you how to create a multilingual website using an extension.

In our previous article we discussed about Neno translation extension for joomla and today I am going to use the another popular extensions JA Multilingual Component.

It's free Joomla multi-language translation extension.

This extension is light in weight but robust at speed. To boost up your multilingual website, it will do almost everything what you need.

Let's see how it works through the following steps:

  1. Download JA Multilingual Component
  2. Component Installation
  3. Translate Language

Step 1: Download JA Multilingual Component

At the beginning stage, you need to download JA Multilingual Component from their official site.

It is free of cost. To download this extension, you need to create an account on their site because they don't admit to providing their service to non-users.

Step 2: Component Installation

Navigate Extensions -> Manage -> Install.

In the new window that opened, you will see a file upload option.

Just point to your download file and hit Upload & Install button. After a few seconds, the extension will successfully install.

Step 3: Translate Language

Navigate Components -> JA Multilingual.

Here you see a notification that asks to configures authenticate API (Application Programming Interface) to translate the site.

Just press the Options from the top. Insert the API key and save and close the current window.

You can install languages as you want and then press Translate All to do all tasks immediately. Wait a few moments until it is done.

Take a look how it works.

Final Words

Hope you enjoyed this tutorial, and now you can create a multilingual site using Joomla. Let us know about your further query and share your opinion.

How To Enable SSL On Joomla Website

How To Enable SSL On Joomla Website

Joomla CMS (Content Management System) has an advance feature to activate the Joomla SSL Certificate on a Joomla website called "Joomla Force SSL".

The word "SSL" stands for "Secure Sockets Layer", is the standard of security technology that establish an encrypted link between a browser and a web server. It transmits private data such as credit card numbers, social security numbers to your Joomla site through the encrypted format.

Therefore, connections to or within your site will be on the secure Joomla HTTPS protocol instead of the standard HTTP prefix.

Today, I am going to show you- how to enable Force SSL for your Joomla site through this tutorial. Hope you will like it.

Checklist for your Joomla SSL setup:

To get an Joomla SSL Certificate enabled for your Joomla site, you should have these followings in advance.

  1. An SSL Certificate, which should be installed successfully on your server. In that case, you need to buy an SSL Certificate.
  2. A dedicated IP Address, which is unique for one SSL Certificate.

Enable force SSL for your Joomla site

Step 1: Enable Force SSL in Joomla

Login to your Joomla site and navigate System -> Global Configuration.


In the new window that opened choose the "Server" tab. There is a setting option named "Force SSL", there are 3 Force SSL options that you can select from here:


None: If you do not enable Joomla SSL on your Joomla site.

Administrator Only: If your site administrator will be on HTTPS.

Entire Site: If all over your website will be on HTTPS.

In the parameter "Force SSL", choose "Entire site". Hit the "Save & Close" button.

It will force SSL your entire website, both the administrator and the front-end.

Step 2: Configure your configuration.php file

Go to your CPanel -> "Your Website Folder". Next, open “configuration.php” file with an editor and find the following line:

public $live_site ='';

And after that replace the above line with the following line:

public $live_site = '';

Step 3: Configure your .htaccess file


Next, open the ".htaccess" file from the following folder and then add the following code at the bottommost.

RewriteEngine On
RewriteCond %{HTTPS} OFF
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}

You have done everything, Check your site now.

Some Last Words

So far by this time, you have learned how to enable Force SSL for your Joomla site.

Hope this will help you to secure your Joomla site with an SSL certificate that enables Joomla HTTPS protocol.

Feel free to ask any of your question regarding this article and share your opinion and experience through the comment section.

How To Create Joomla XML Sitemap In 5 Steps (Updated)

How To Create Joomla XML Sitemap In 5 Steps (Updated)

A Joomla XML sitemap is a document or a file that helps Google and other search engines better understand your website while crawling it.

It is the way for website owners to tell search engines about all the pages that exist on their site and accessible to all users.

Above all, an XML sitemap is not made for the visitors or users, instead of made for the search engines.

Unfortunately, the default Joomla can not generate a sitemap that’s why you are forced to use additional extensions that provide such functionality.

The easiest way to create a sitemap for a Joomla website is to use one of the many extensions available. In this tutorial, I'll go you through creating an XML sitemap file for Joomla website, using the OSMap extension.

OSMap is a free Joomla sitemap generator, automatically create a Google-friendly sitemap for your all content including images, pages. It also generates HTML sitemap and allows multilingual sitemaps.

Creating Joomla Sitemap

Step 1: Download OSMap

At first, you need to download OSMap. Go to their official site and choose your suitable package. There are three packages available for OSMap - Free, Pro with advanced support for 6 months and Pro with advanced support of 12 months.

Free version doesn’t contains all the higher functionalities that pro version contains. To enjoy those features you must buy the pro version. After buying the extension download link and option will be available to you.

Step 2: Install the extension on your Joomla website

Login your Joomla administration panel and navigate Extensions -> Manage -> Install.


In the opening window, you will see a file uploader option. Click on it and select the file which you have downloaded a few seconds before. And press the "Upload & Install" button.


You will see a successful message after few seconds.

Step 3: Configure OSMap Sitemap

Navigate Components -> OSMap. The "Sitemap Manager" window will open. Here, you will see a link named Sitemap. Make sure it is published and default.



Step 4: View the Sitemap

The link Sitemap contains 4 Sitemap links (XML, HTML, News, Images) in the "Sitemap Manager".

  • XML: (For Google search engine) Click on the XML link. The XML version of the sitemap would look like the image below. You can copy the links from here and submit these links into Google search console.
  • HTML: (For visitors) This version will let you show all your contents to your visitor.
  • News: For Google News
  • Images: To submit your images to Google

Step 5: Display a sitemap in your website

Navigate Menus -> Main Menu -> Add New Menu Item.


Make a new item named "Sitemap" and press "Select".


In the opening popup window, choose "HTML Sitemap" from OSMap. Also, make sure the item status is "Published" after then press "Save & Close" button.


Look at the image below; a new item has added to the main menu.


It will appear as a HTML Sitemap in your site that increases the website usability. Look at the image below.


An HTML sitemap is one kind of table of contents where users get an overview of every important page of a website that it contains.

Moreover, there are links to the different pages, so users can easily navigate to the information they are searching for a site.

There also some more free Joomla sitemap extensions available to generate Joomla sitemap such as:

Aimy Sitemap : Easily generate HTML and XML sitemap of your website with Aimy Sitemap. Improve website usability and SEO with this highly customizable sitemap generator. Features of Aimy Sitemap includes:

  • Crawls your website like a search engine
  • Generates XML and HTML sitemaps
  • High flexibility
  • MySQL database support
  • SEF support
  • Notifies search engines
  • Evaluates robots.txt

This sitemap can be also generated for any third party components.

Sitemap Generator : This sitemap generator creates a XML sitmap of your website and uses an external service to crawl your website. The cost of computation for your website is very low, because crawler acts like a normal visitor.


  • Simple Setup
  • Low computation cost
  • Uses Joomla Update function
  • Support for robots meta elements
  • Generated image and video sitemaps
  • Adds nearly all indexable file types to the sitemap. Sitemap generator guarantees that speed of your website will not be affected for your visitors during the generation of sitemap.

Sitemap Faster: This component is very easy to install and the instalation process will be completed within shortest time. The goal of this extension is simple - Generate sitemap of your website faster. Features of SitemapFaster

  • Generates XML sitemap
  • Generates HTML sitemap
  • SEF Supported

All of them are robust, highly featured, and well coded.

Other Joomla sitemap extensions are including valuable features which are not free and paid to download, these are:

Hope you enjoy this article, and now you can add a sitemap on your Joomla site. Let us know about your opinion through the comment section. And feel free to ask any question regarding this tutorial.