fix(cli): remove tpl_ prefix from template element in updates.xml
Generic: Repo Health / Site Health (push) Has been cancelled
Generic: Repo Health / Access control (push) Has been cancelled
Universal: Auto Version Bump / Version Bump (push) Has been cancelled
Platform: moko-platform CI / Gate 1: Code Quality (push) Has been cancelled
Platform: moko-platform CI / Gate 2: Unit Tests (8.1) (push) Has been cancelled
Platform: moko-platform CI / Gate 2: Unit Tests (8.2) (push) Has been cancelled
Platform: moko-platform CI / Gate 2: Unit Tests (8.3) (push) Has been cancelled
Platform: moko-platform CI / Gate 3: Self-Health Check (push) Has been cancelled
Platform: moko-platform CI / Gate 4: Governance (push) Has been cancelled
Platform: moko-platform CI / Gate 5: Template Integrity (push) Has been cancelled
Platform: moko-platform CI / CI Summary (push) Has been cancelled
Generic: Repo Health / Release configuration (push) Has been cancelled
Generic: Repo Health / Scripts governance (push) Has been cancelled
Generic: Repo Health / Repository health (push) Has been cancelled

Joomla stores templates in #__extensions without a prefix (bare name
like "mokoonyx"), not "tpl_mokoonyx". The tpl_ prefix prevented
Joomla from matching the update to the installed extension.

Authored-by: Moko Consulting
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Jonathan Miller
2026-05-28 22:45:08 -05:00
parent c4bfbae348
commit 25d51c1ec0
+2 -3
View File
@@ -374,13 +374,12 @@ function buildEntry(
$lines[] = " <name>{$displayName}</name>";
$lines[] = " <description>{$displayName} {$stabilityLabel} build.</description>";
// Element in updates.xml must match what Joomla stores in #__extensions.
// Plugins are stored as bare element (folder handles grouping).
// All other types need their prefix: mod_, com_, tpl_, pkg_, lib_.
// Plugins and templates are stored as bare element (no prefix).
// Other types need their prefix: mod_, com_, pkg_, lib_.
$prefixMap = [
'package' => 'pkg_',
'module' => 'mod_',
'component' => 'com_',
'template' => 'tpl_',
'library' => 'lib_',
];
$dbElement = isset($prefixMap[$extType]) ? $prefixMap[$extType] . $extElement : $extElement;