Joomla

Contents
Find the module positions
A lost administrator password
Back up a site
configuration.php
A working copy of a site
Which PHP the site runs on
Updates
Errors

Joomla! is a content management system written in PHP and JavaScript. It stores its content in MySQL, MariaDB or PostgreSQL and is free software under the GNU GPL. This page collects tasks that come up when you run a Joomla site; the last two chapters are from the time of Joomla 1.5 and 2.5 and are marked as such.

Find the module positions

Add ?tp=1 to the address of any page and press Enter: Joomla outlines every module position of the template with its name. Since Joomla 3 this works only after Preview Module Positions is enabled in the options of the templates in the administrator.

A lost administrator password

The login form of the site has a Forgot your password? link that sends a reset link to the email address of the account. It needs working mail on the server; otherwise ask the hosting provider, or set a new password for the user in the users table of the database.

Back up a site

A Joomla site is its files and its database; a backup needs both.

configuration.php

The settings of the site, among them the access to the database, are in configuration.php in the root folder. The lines for the database:

public $host = 'localhost'; public $user = 'example_user'; public $password = 'a-long-random-password'; public $db = 'example_db'; public $dbprefix = 'jos_';

Joomla 1.5 wrote var instead of public. Keep the file readable for the web server only; it contains the database password.

A working copy of a site

To try something on a copy, copy the folder of the site and the database, then point the copy at the copied database in its configuration.php: the line $db. The same file has absolute paths in $log_path and $tmp_path; change them to the new folder, or the copy writes into the folders of the original site. A move to another hosting works the same way, see also Moving a website.

Which PHP the site runs on

In the administrator: System, System Information (in Joomla 1.5 Help, System Info). The tab PHP Information shows the full phpinfo().

Updates

Current versions update themselves: System, Update, Joomla. Back up first, and try the update on a copy if the site has many extensions.

From the time of Joomla 1.5. A 1.5 site was brought to the last 1.5 version, 1.5.26, with patch packages named joomla_1.5.x_to_1.5.y-stable-patch_package, uploaded over FTP, often in several steps, for example 1.5.10 → 1.5.18 → 1.5.20 → 1.5.23 → 1.5.24 → 1.5.25 → 1.5.26. From 1.5.26 the extension jUpgrade moved the site to 2.5; it needed the plugin System - Mootools Upgrade enabled, and sometimes only started after that plugin was switched off and on again. Both versions are long out of support; an old site today is better moved to a current version with a migration tool or rebuilt.

Errors

Older Joomla versions could write files over FTP, and a wrong FTP setting caused errors such as:

JFTP::store: Bad response Warning! Failed to move file.

If the web server may write the files itself, switch the FTP layer off: Global Configuration, Server, Enable FTP: No. If you need it, these errors mean the FTP password there is wrong:

JFTP::login: Unable to login JFTP::write: Unable to use passive mode An Error has occurred! Unable to open configuration.php file to write!

From the time of Joomla 2.5. After an upgrade from 1.5.26 to 2.5 with jUpgrade, the administrator sometimes failed with

Fatal error: Call to a member function login() on a non-object in /public_html/administrator/components/com_login/admin.login.php on line 64

The advice found online, to put the jUpgrade folder into the web root again or to bring back htaccess.txt of the old site, did not help here. What worked: restore the old site from the copy saved before, upgrade again, move the jupgrade folder elsewhere, empty public_html, copy the contents of jupgrade into it, and only then start working with the 2.5 site.

Article authors: Andrei Olegovich, Klavdiya Kondakova

Related articles
Responsive design: an adaptive menu
Beget mail: create a mailbox
Canonical page: rel=canonical
CSS
Firefox
Which hosting to choose
VPS hosting
HTTP status codes
Joomla
OpenCart
PUT vs POST
Redirects
Russian IP ranges
SEO
Element tbody not allowed as child of element table in this context
CSS test: shapes and line numbers
CSS test 2: the code blocks of this site
Website testing
A tram drawn with CSS
URL encoding
UTM tags
Telling bots from people
WebP images
Moving a website: domain and hosting
WordPress
Move a WordPress site
Yandex Metrica: goals
Yandex Mail: collect mail from other mailboxes

Search this site

Channel @aofeed Chat @aofeedchat

Contacts and cooperation:
I recommend our hosting beget.com
Write to info@aredel.com if you:
1. Want to write an article for our site or translate an article into your native language.
2. Want to place thematically relevant ads on the site.
3. Ads on my site pass maximum censorship. If you see an ad block unsuitable for school-age children, shocking or misleading - please contact us by e-mail
4. Found a mistake, inaccuracy, bug, etc. on the site. ... .......
5. Articles can be shared on social media by clicking a network icon: