/editor*.php
/vendor/
adminer-plugins/
+adminer-plugins.php
- CSS: Allow more custom styles with dark mode (bug #925)
- IMAP: New plugin driver created for fun
- Plugins: autoload plugins from adminer-plugins/
-- Plugins: configure plugins with adminer-plugins/config.php
+- Plugins: configure plugins with adminer-plugins.php
+- Plugins: Display loaded plugins in server overview
## Adminer 5.0.6 (released 2025-03-17)
- Align numbers right (bug #912)
```
- adminer.php
-- adminer-plugins
- - config.php
+- adminer-plugins/
- dump-xml.php
- login-password-less.php
+ - ...
+- adminer-plugins.php
```
-Some plugins require configuration. To use them, you need to create another file in `adminer-plugins/`:
+Some plugins require configuration. To use them, create file `adminer-plugins.php`. You can also specify loading order here.
```php
-<?php // config.php
-require_once __DIR__ . "/login-password-less.php";
-
+<?php // adminer-plugins.php
return array(
new AdminerLoginPasswordLess('$2y$07$Czp9G/aLi3AnaUqpvkF05OHO1LMizrAgMLvnaOdvQovHaRv28XDhG'),
+ // You can specify all plugins here or just the ones needing configuration.
);
```
if (function_exists('adminer_object')) {
$adminer = adminer_object();
-} elseif (file_exists("adminer-plugins/")) {
+} elseif (is_dir("adminer-plugins") || file_exists("adminer-plugins.php")) {
include "./include/plugins.inc.php";
$adminer = new Plugins(null);
} else {
function __construct($plugins) {
if ($plugins === null) {
$plugins = array();
- foreach (glob("adminer-plugins/*.php") as $filename) {
- $include = include_once "./$filename";
- if (is_array($include)) { // example: return array(new AdminerLoginOtp($secret))
- foreach ($include as $plugin) {
- $plugins[get_class($plugin)] = $plugin;
- }
+ $basename = "adminer-plugins";
+ if (is_dir($basename)) {
+ foreach (glob("$basename/*.php") as $filename) {
+ $include = include_once "./$filename";
+ }
+ }
+ if (file_exists("$basename.php")) {
+ $include = include_once "./$basename.php"; // example: return array(new AdminerLoginOtp($secret))
+ foreach ($include as $plugin) {
+ $plugins[get_class($plugin)] = $plugin;
}
}
foreach (get_declared_classes() as $class) {