Fix: show all plugins in content-edit, not just those with plugin.json

HTMLBlock has no plugin.json, only HTMLBlock.php.
Accept plugin if it has plugin.json OR <PluginName>.php.
This commit is contained in:
2026-08-11 17:12:04 +02:00
parent b6896c60e5
commit 8ebfcb6061
+7 -3
View File
@@ -508,14 +508,18 @@ function handleContentEdit($auth, $config, $twig, $user, $csrf, $siteConfig): vo
} }
} }
// Get available plugins // Get available plugins (must have plugin.json or <PluginName>.php)
$pluginsDir = $config['plugins_dir']; $pluginsDir = $config['plugins_dir'];
$availablePlugins = []; $availablePlugins = [];
if (is_dir($pluginsDir)) { if (is_dir($pluginsDir)) {
foreach (glob($pluginsDir . '*', GLOB_ONLYDIR) as $pluginDir) { foreach (glob($pluginsDir . '*', GLOB_ONLYDIR) as $pluginDir) {
$pluginName = basename($pluginDir); $pluginName = basename($pluginDir);
if ($pluginName !== '.' && $pluginName !== '..' && file_exists($pluginDir . '/plugin.json')) { if ($pluginName !== '.' && $pluginName !== '..') {
$availablePlugins[] = $pluginName; $hasJson = file_exists($pluginDir . '/plugin.json');
$hasPhp = file_exists($pluginDir . '/' . $pluginName . '.php');
if ($hasJson || $hasPhp) {
$availablePlugins[] = $pluginName;
}
} }
} }
} }