Installation / Requirements / Language

Installation / Requirements / Language Files / Paypal Configuration / Smart Search

Server software requirements

Server requirements for extensions installation.


Joomla version 4 or higher. 

PHP version

          PHP 7.4 or later

MySQL server

          MySQL version 6.0 or later (we recommend the very latest stable release)

Web server

          Any web server daemon - such as Apache, Nginx or IIS, which is fully compatible with the required PHP configuration.

max_input_time: "100"     
magic_quotes_gpc: "Off" 
memory_limit: "10M" 
file_uploads: "On"
upload_max_filesize: "12M"
short_open_tag: On     
php_short_tags: On   

Apache server settings

If you have mod_security installed on your apache web server, please ensure that these rules are disabled:

<IfModule mod_security2.c>
    SecRuleRemoveById 222390
    SecRuleRemoveById 218500
    SecRuleRemoveById 980140
    SecRuleRemoveById 959100
    SecRuleRemoveById 953100

New Installation

Website Domain

The site where a component has been installed should be installed in domain or sub-domain ( a root of the site), otherwise, some images may be not displayed e.g. map markers. 

Install on Domain/Subdomain rather than the directory:  WRONG  CORRECT  CORRECT 


If you have already downloaded the extension, unzip it first to a temporary directory. You will see two packages:

Both packages need to be installed but be sure to install first

The easiest way to install the extensions is by using the Upload Package File option. Just click on the Choose File button, and locate the extension.

Once you've selected the correct file, click Upload File and Install. Joomla will then automatically extract and install the extension for you.

Installing from directory

From time to time you may find that the Upload Package File option is having a bad day (there's always a reason). If you find yourself in this position, you can either troubleshoot and fix the problem, or you can use the other option Joomla provides to install an extension: Install From Directory. To use of this option, you'll need FTP access, or another file access and transfer protocol. Your hosting provider will be able to give you the information you need in order to gain FTP access to your web files. Once you have FTP access, you'll need to upload the zipped extension into the public directory of your Joomla website (generally called public_html).

From here, just provide Joomla with the file location of the extension under Install From Directory, and again Joomla will extract and install the extension for you.

Remember to install both packages.

Creating Administration Menu Links

Go to the System -> Administrator modules and insert new. Than choose Administrator Menu. From the presets, select Comdev and place it under menu position. Do the same for the JomDirectory

.htaccess file

These are step-by-step instructions. Please follow them in the order they are presented here. If a step fails, do not continue until you have solved the problem.

  1. Rename the file "htaccess.txt" in your Joomla!'s base folder to ".htaccess".
  2. This step may not be necessary. Open .htaccess in a text editor. Uncomment RewriteBase / (remove the first character, #). If Joomla is installed in its own folder, the enter the Joomla folder name after the backslash. e.g. RewriteBase /yourjoomlafolder.
  3. Log on to your Back-end and open the Global Configuration.
  4. Enable the Search Engine Friendly URLs option and Save. This option converts the URLs from the native Joomla! format to the SEF format.
  5. Enable the Use Apache mod_rewrite/URL rewriting option and Save. This option uses the Apache mod_rewrite function to eliminate the "index.php" portion of the URL.
    (Note:This can in some circumstances stop your Joomla front end working, if it does set back to No)
  6. If you think it's necessary, enable Add suffix to URLs and Save. This option adds .html to the end of URLs. There are different opinions on whether this is necessary or even useful. Search engines do not seem to care if your URLs end in .html or not.
  7. Open the Plugin Manager and enable the System - SEF plugin. This plugin adds SEF support to links in your Joomla articles. It operates directly on the HTML and does not require a special tag.

I have problem installing...

Because Extensions is actually quite an advanced componenst, the size of the installer exceeds 2mb which is the default configuration that is set by most hosting companies. If you have problems installing, you might want to try to contact your hosting provider.

If your hosting provider allows you to override the php settings by adding a php.ini file in your document root, containing the following block of code.

upoad_max_filesize = 12M
post_max_size = 12M
memory_limit = 32M
max_execution_time = 120



Please make a Full Backup of your website before performing this upgrade. If you do not know how to do so, contact your Hosting Provider. Clear Joomla temp directory before doing an upgrade.

Although you should always have a backup, upgrading the plug-in is the same as for a new installation. Once you have downloaded the newest version of Extension to your computer, just follow the directions under New Installation. If you are currently running an earlier version of the component, the Joomla installer will automatically update those files and database tables.

Upgrading to a newer version will not delete any existing data.

QuickStart Installation

QuickStart Package

QuickStart is only available for the Business Plan Subscribers.

Please use FTP BINARY mode when transferring files.

The whole process is very easy to run, treating it like a normal installation of Joomla 4 environment, already containing Joomla Template, Extension, Modules and Plugins used in the project, their respective settings, content, positioning of modules and menus assignment, exactly how you can enjoy on our demo.

Please notice that demo content should not be used on a production site, real data should be inserted instead.

Installation steps

An installation of the  Quickstart package is a really simple process

Go to your new host and create a database. If your host has a cPanel, this can be done using the database wizard. If you aren't sure how to create a database, please contact your Joomla hosting company.

Write down the name, username and password for the new database. You will need it during the installation process.

Unzip and Upload USING BINARY MODE Joomla files to you new EMPTY hosting space. There cannot be another Joomla install in the hosting space you upload it to. Unpacking the files will overwrite any existing Joomla files.

Now to go your URL: and follow the directions. If your host is not yet set up with your live URL, contact your hosting company to find out the temporary URL you should use to view the site.

Tips during installation:

Note when you put in the database info, they ask for username first, and database name after.

If the system cannot read your database, go back and verify the username and password.

Do NOT enable the FTP feature during the process. Just click next when you get to that screen.

Using FTP rename htaccess.txt to .htaccess (with a dot in front) file or turn off URL rewriting in Joomla. If you encounter an error when accessing site, edit .htaccess and comment out the line: #Options +FollowSymLinks 

That's it after installation you can safely delete installation folder and access the site with credentials setup during installation.

Download and Update both extensions when Quickstart installation is done. Quickstart is being updated periodically!

Multilingual Site


Basically, transforming an existing Joomla website into a Joomla multilanguage website is nothing more than duplicating your content (categories, articles, menus, menu items, modules) and assigning all this to a separate language.

As alternative you can use 3'rd party extensions like Falang or JomFish.

Before you start, disable or clear your cache to ensure JomDirectory using the latest data. Finally, if you use any SEO plugins (JoomSEF, Sh404SEF, SEOSimple, MijoSEF) 

Your language means e.g. Spanish, French or whatever language you are using. These steps need to be followed for every new language you configure.

Install your language pack

Since we want Joomla to generate language-specific strings on our site (and even on our backend if we want to), we first have to install one or more language packs. (After installation, the new language will appear under Extensions > Language Manager. It shows up both under the tabs Installed – Site and Installed – Administrator). For more information on installing language packs, check out

Filter a specific language

By enabling functionality to filter a specific language, we can ask Joomla to discover the language that’s been used in the browser of our visitor. In that way, Joomla will automatically provide the visitor with his preferred language. This is the case whenever there’s a match between the browser settings language of the visitor and one of the languages that’s installed in our Joomla website. If there’s no match, the visitor will be shown the default language.

When a visitor to your site is looking at your English listings, by switching to the another language (see A Language Switch Module), Joomla will know that you still want to see the Directory Listing, but in a different language. (If you don’t use menu item associations, Joomla will send the user to the homepage which is not exactly something we want to happen.)

Enable second language for JomDirectory 

Assuming that you already have an English categories (language also set to English), duplicate category (Save as copy) and edit it's details. Go to Publishing tab and sets desired language than Save. Do that for every category. 

Do the same for the Custom fields and Listings. If necessary also Addresses and Reviews.

Duplicate menu

We need to duplicate our current menu, so menus are available for each one of the installed languages. First, we assign the current menu to the English language.

Now create Your's language menu.
  • Click New
  • Title: French
  • Menu type: french
  • Description: French language menu
  • Click Save & Close

Duplicate JomDirectory menu items

Since we created a separate menu for each language, we need to duplicate our menu items as well. By default, the current menu items are set to the language All. First, assign them to the English menu.

JomDirectory Items link needs to be duplicated for each language. More about creating menu links can be found here

Now duplicate the menu items and assign them to the Your's language menu.

Duplicate the menu placeholders

Now that the menus and menu items are generated for both languages, we need a menu module to publish them on the site. We first assign the English menu to the current menu module.
  • Extensions > Module Manager > click your current menu
  • Title: English menu
  • Language: English
  • Module Assignment: to clear all checkboxes click No pages
  • Module Assignment: Only on the pages selected
  • On the English tab below check all boxes
  • Select Menu: English
  • Click Save
Now duplicate this menu module and assign it to the French menu.
  • Click Save as Copy
  • Title: French menu
  • Status: Published
  • Language: French
  • Module Assignment: to clear all checkboxes click No pages
  • Module Assignment: Only on the pages selected
  • On the French tab below check all boxes
  • Select Menu: French
  • Click Save & Close 

A language switcher module

We want to provide our visitors a way so they can switch to another language. To accomplish this, we’re going to publish the language switcher module. This module uses a dropdown to switch languages, but you can also use little clickable icon flags.

Languge Files


Our Extensions uses native Joomla language procedures. 

Translate example - JomDirectory

We have created an installation package that can be translated and adapted to any language.

Please notice that file version is 6.1. While you are reading there can be the newest version.

Here is a procedure to translate the extension and create a language pack:

Unpack the files

To translate extension into any language file needs to be downloaded (link above) and unpacked to some temporary directory. Structure of the folders will looks like this:


These are the folders containing translations for the extensions and modules. The last file is the installation file.

Changes files names to new language

If we would like to translate e.g. into German we would need change all the names from en_GB to de_DE accordingly:

Translate all phrases inside files

We need to translate all the phrases in the files, these are in double quotes e.g:


Edit installation file

After translation is done, edit jomdirectory_de_de_language_pack xml and change all names accordingly:

<?xml version="1.0" encoding="utf-8"?>
 <extension type="file" version="2.5" method="upgrade">
 <name>JomDirectory Sprachpaket Deutsch</name>
 <authorEmail>YOUR EMAIL</authorEmail>
 <copyright>Copyright (C) 2011 Comdev. Alle Rechte vorbehalten.</copyright>
 <license> GNU/GPL</license>
 <description>JomDirectory Sprachpaket Deutsch</description>
 <!-- Admin jomdirectory component language folder -->
 <files folder="com_jomdirectory/admin" target="administrator/language/de-DE">
 <!-- Admin jomcomdev component language folder -->
 <files folder="com_jomcomdev/admin" target="administrator/language/de-DE">
 <!-- Site jomdirectory language folder -->
 <files folder="com_jomdirectory/site" target="components/com_jomdirectory/language/de-DE">
 <!-- Site jomcomdev language folder -->
 <files folder="com_jomcomdev/site" target="components/com_jomcomdev/language/de-DE">
 <!-- modules language files -->
 <files folder="mod_jomdirectory_items" target="language/de-DE">
 <files folder="mod_jomdirectory_search" target="language/de-DE">

Please make sure to insert your email:

 <authorEmail>YOUR EMAIL</authorEmail>

for further updates. As seen above all en_GB has been changed to de_DE.

Zip package

The last step is to zip all files and create a new file:

Test package

Now go to your Joomla and install package, if everything goes right component will be translated, upload it on the Forum in Localizations

If any errors?

It is worth to turn on language debug under Joomla to check if any language errors occur and need to be corrected. These will be visible under the page flashing on red, also, lines will be provided in which error occurs.

The most common error is enclosed double quotes e.g: COM_JOMCOMDEV_HOME_CATEGORIES="Kategorien

Unicode UTF8 Compatibility

Language files have to be saved with the encoding UTF8 NO BOM.

Please see the Joomla documentation on the link below for more information on Joomla language files.

For technical information about this topic see:

2.6 Encoding Schemes


Smart Search


Search technology has improved considerably over the years since Joomla was first launched and yet the standard, basic search component has not changed much over that time. It is still very crude and lacks the kind of search features that web users have come to expect, especially given the prevalence of advanced search engines such as Google. Smart Search allows you to incorporate some of those more advanced search features into your website.

To start using the Smart Search feature, click Components > Smart Search.

Ensure that instead of standard search module you use Smart Search Module pre-installed with Joomla.

Indexing pages using Smart Search component

For all the pages created on the site to be part of the search results or be indexed, indexing needs to be done consistently. 

Provide the values or options based on the information given in the following table.


Click to index all the newly created pages on the site.


Publish the indexed content


Unpublish the indexed content


Delete the indexed content


Permanently erase the indexed content


Click to view the linking statistics of the indexed items.

Ensure that JomDirectory Smart Search plugin is present and enabled under Plugins. Otherwise component content won't be found.

Search Filters

You can create search filters that customized to your search requirements. 

To create a new search filter, click New.

Editing a Search Filter

Edit Filter tab

Provide the value as described in the following table.


Provide a name for the search filter.


Provide an alias for the filter.

Map Count

Auto populated field

Search criteria

Select the search criteria as per your requirement.

  • Search All
  • Search by Author
  • Search by Category
  • Search by Language
  • Search by Type


Select the required status

  • Published
  • Unpublished

Filter Timeline tab

Provide the options as described in the following table.

When (Start Date)

Select the time period from the following options.

  • None
  • Before
  • Exactly
  • After

Start Date

Select a start date.

When (End Date)

Select the time period from the following options.

  • None
  • Before
  • Exactly
  • After

End Date

Select an end date.

PayPal Configuration

How do I create REST API credentials?

Here's how:

  1. Log in to the PayPal Developer Portal using the same credentials you use for PayPal.
  2. Select Dashboard.
  3. Click Create App under REST API apps. Any previously created REST API apps will appear in the table under the Create App button.
  4. Enter the name of your REST API app in the App Name field, and select a Sandbox developer account to associate with your account.
    Note: Remember that you can't use a Live credit card in Sandbox, and you can't use a test credit card in your Live account.
  5. Request permissions for REST API features that apply to your integration, such as:

To request access to the following features in the Live environment, select the Enable options as shown in the following screen. After you click Enable, your choices undergo a vetting process that can take up to two or three business days.

  1. Once your Live and Sandbox REST API credentials are created, including Client ID and Secret, click the Sandbox and Live buttons to switch between each set of credentials.


Add your new credentials

Go to Joomla Plugins than find Comdev PayPal Plugin, enter given credentials created in previous point. Switch Live or Sandbox.