Creating custom theme ¶
To create a theme:
- make a new subdirectory (for example "your_theme_name") under
./themes/
. - copy the files and directories from
pmahomme
to "your_theme_name" - edit the css-files in "your_theme_name/css"
- put your new images in "your_theme_name/img"
- edit
layout.inc.php
in "your_theme_name" - edit
theme.json
in "your_theme_name" to contain theme metadata (see below) - make a new screenshot of your theme and save it under "your_theme_name/screen.png"
Theme metadata¶
Changed in version 4.8.0: Before 4.8.0 the theme metadata was passed in the info.inc.php
file. It has been replaced by theme.json
to allow easier parsing (without need to handle PHP code) and to support additional features.
In theme directory there is file theme.json
which contains theme metadata. Currently it consists of:
name
-
Display name of the theme.
This field is required.
version
-
Theme version, can be quite arbirary and does not have to match phpMyAdmin version.
This field is required.
desciption
-
Theme description. this will be shown on the website.
This field is required.
author
-
Theme author name.
This field is required.
url
-
Link to theme author website. It's good idea to have way for getting support there.
supports
-
Array of supported phpMyAdmin major versions.
This field is required.
For example, the definition for Original theme shipped with phpMyAdnin 4.8:
{ "name": "Original", "version": "4.8", "description": "Original phpMyAdmin theme", "author": "phpMyAdmin developers", "url": "https://www.phpmyadmin.net/", "supports": ["4.8"] }
Sharing images¶
If you do not want to use your own symbols and buttons, remove the directory "img" in "your_theme_name". phpMyAdmin will use the default icons and buttons (from the system-theme pmahomme
).