public
Last active

Override Core Joomla! Classes

  • Download Gist
config.php
PHP
1 2 3 4 5 6 7 8 9 10 11 12
<?php
/**
* @package Joomla.Plugin
* @subpackage System.Overrides
*
* @copyright Copyright (C) 2012 Don Gilbert. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE
*/
define('OVERRIDES', dirname(__FILE__).'/overrides');
 
// Use JLoader to register all the classes you want to override
JLoader::register('JClassToOverride', OVERRIDES.'/libraries/joomla/class/to/override.php', true);
index.html
HTML
1
silence is golden
overrides.php
PHP
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
<?php
/**
* @package Joomla.Plugin
* @subpackage System.Overrides
*
* @copyright Copyright (C) 2012 Don Gilbert. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE
*/
 
defined('JPATH_BASE') or die;
 
/**
* System plugin to override core classes terms.
*
* @package Joomla.Plugin
* @subpackage System.Overrides
* @since 2.5
*/
class PlgSystemOverrides extends JPlugin
{
/* We do our thing in the __construct method
* so that our overridden classes will be
* available everywhere
*/
public function __construct(&$subject, $config)
{
parent::__construct($subject, $config);
include_once 'config.php';
}
}
overrides.xml
XML
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
<?xml version="1.0" encoding="utf-8"?>
<extension version="2.5" type="plugin" group="system" method="upgrade">
<name>plg_system_overrides</name>
<author>Don Gilbert</author>
<creationDate>Aug 2012</creationDate>
<copyright>(C) 2012 Don Gilbert. All rights reserved.</copyright>
<license>GNU General Public License version 2 or later; see LICENSE.txt</license>
<authorEmail>don@electriceasel.com</authorEmail>
<authorUrl>www.electriceasel.com</authorUrl>
<version>2.5.6</version>
<description>This plugin will override classes contained in the included config file.</description>
<files>
<filename plugin="overrides">overrides.php</filename>
<filename>config.php</filename>
<filename>index.html</filename>
<folder>overrides</folder>
</files>
</extension>

Please sign in to comment on this gist.

Something went wrong with that request. Please try again.