PluginComponent
UtilitiesEasy Code Highlighter
Code Highlighter Plugin for Joomla
Instant access after purchaseOne-click Joomla updatesLifetime option available
30-day money-back guarantee
Works with
Joomla 4 Joomla 5 Joomla 6
Changelog — Easy Code Highlighter
Version 2.2: 20 October 2026
- Download Key support on the update site (dlid).
Version 2.1: 19 October 2026
- Runs on Joomla 5 and 6 with the Behaviour Backward Compatibility plugins disabled
- The editor button uses the Joomla 5 plugin service and the current database API
Version 2.0: 20 July 2026
- Full rebuild on Prism.js 1.30 with modern Joomla 4 / 5 / 6 system plugin (service provider, namespace, SubscriberInterface)
- Replaced abandoned SyntaxHighlighter 3 assets and packed eval core
- Shortcode is
[codehighlight id=X]only; legacy{code}...{end-code}markup is retired - Fixed language mapping for JavaScript, C#, PowerShell, and other brushes that failed under the old filename rules
- Added line numbers, line highlight, and copy toolbar via Prism plugins
- Legacy theme names map to the closest Prism themes
- Added editors-xtd insert button for published snippets
- Component branding, SQL datetime defaults, and MEDIUMTEXT code column update
- Package includes component, system plugin, and editor button
Version 1.7: 12 December 2025
- Package version 1.7 with component and plugin
- Component version 1.7 - Complete code snippet management system
- Plugin version 1.7 - Shortcode processing and display
- Full Joomla 4, 5 & 6 compatibility
- Modern PHP 8.0+ support
- Backend component for managing code snippets
- Shortcode system: [codehighlight id=X]
- Support for multiple programming languages
- Syntax highlighting with multiple themes
- Copy to clipboard button
- Line numbers (gutter) option
- Highlight specific lines feature
- Responsive design for all devices
- Auto-enabled plugin on installation
- User-friendly backend interface
- Proper ACL integration
- Security enhancements
- Performance optimizations
- Improved language loading
- Fixed menu language constants
Version 1.6: 12 September 2025
- Added copy to clipboard functionality with modern Clipboard API and fallback support.
- Fixed HTML entity encoding issues for proper code display.
- Improved admin interface with professional styling and theme preview.
- Enhanced folder structure organization for better maintainability.
- Added comprehensive Joomla 5.3.3 compatibility and testing.
- Optimized asset loading with lazy loading of language brush files.
- Improved accessibility with screen reader and keyboard navigation support.
- Enhanced security with proper input sanitization and output escaping.
- Removed unused files and cleaned up codebase for production readiness.
Version 1.5: 10 February 2023
- Changes to backend of the plugin.
Version 1.4: 25 October 2021
- Supports Joomla 4
Version 1.3: 19 June 2021
- Backend jQuery Issue Fixed
- Modifications to Plugin Backend
Version 1.2: 23 May 2019
- Joomla Update Integrated
DemoPHP with line highlight
<?php
declare(strict_types=1);
function greet(string $name): string
{
return "Hello, {$name}!";
}
echo greet("Joomla");[codehighlight id=1]
DemoCSS sample
.sample-card {
border-radius: 8px;
border: 2px solid #f59e0b;
padding: 1rem;
font-weight: 600;
}[codehighlight id=2]
DemoJavaScript fetch helper
async function loadPosts(url) {
const response = await fetch(url);
if (!response.ok) {
throw new Error(`Request failed: ${response.status}`);
}
return response.json();
}
loadPosts("/api/posts.json").then(console.log);[codehighlight id=3]
DemoHTML markup
<section class="hero">
<h1>Easy Code Highlighter</h1>
<p>Prism.js syntax highlighting for Joomla.</p>
<a class="button" href="#docs">Read the docs</a>
</section>[codehighlight id=4]
DemoSQL query
SELECT a.id, a.title, a.language
FROM #__easycodehighlighter AS a
WHERE a.state = 1
ORDER BY a.ordering ASC, a.title ASC;[codehighlight id=5]
DemoPython snippet
from pathlib import Path
def read_lines(path: str) -> list[str]:
return Path(path).read_text(encoding="utf-8").splitlines()
print(read_lines("readme.txt")[:5])[codehighlight id=6]