Joomla
| 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.
- With the hosting: order a backup in the control panel, and make sure the database is included.
- With the extension Akeeba Backup, which packs files and database into one archive that it can also restore. Every version of Akeeba Backup supports certain versions of Joomla and of PHP; check them on the Akeeba site before you install. For Joomla 1.5 on PHP 5.2 the last suitable version was Akeeba Backup 3.4.3.
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