<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> | |
<html> | |
<head> | |
<title>Code Igniter User Guide</title> | |
<style type='text/css' media='all'>@import url('../userguide.css');</style> | |
<link rel='stylesheet' type='text/css' media='all' href='../userguide.css' /> | |
<script type="text/javascript" src="../nav/nav.js"></script> | |
<script type="text/javascript" src="../nav/prototype.lite.js"></script> | |
<script type="text/javascript" src="../nav/moo.fx.js"></script> | |
<script type="text/javascript"> | |
window.onload = function() { | |
myHeight = new fx.Height('nav', {duration: 400}); | |
myHeight.hide(); | |
} | |
</script> | |
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> | |
<meta http-equiv='expires' content='-1' /> | |
<meta http-equiv= 'pragma' content='no-cache' /> | |
<meta name='robots' content='all' /> | |
<meta name='author' content='Rick Ellis' /> | |
<meta name='description' content='Code Igniter User Guide' /> | |
</head> | |
<body> | |
<!-- START NAVIGATION --> | |
<div id="nav"><div id="nav_inner"><script type="text/javascript">create_menu('../');</script></div></div> | |
<div id="nav2"><a name="top"></a><a href="javascript:void(0);" onclick="myHeight.toggle();"><img src="../images/nav_toggle.jpg" width="153" height="44" border="0" title="Toggle Table of Contents" alt="Toggle Table of Contents" /></a></div> | |
<div id="masthead"> | |
<table cellpadding="0" cellspacing="0" border="0" style="width:100%"> | |
<tr> | |
<td><h1>Code Igniter User Guide Version 1.5.0b3</h1></td> | |
<td id="breadcrumb_right"><a href="../toc.html">Linear Table of Contents</a></td> | |
</tr> | |
</table> | |
</div> | |
<!-- END NAVIGATION --> | |
<!-- START BREADCRUMB --> | |
<table cellpadding="0" cellspacing="0" border="0" style="width:100%"> | |
<tr> | |
<td id="breadcrumb"> | |
<a href="http://www.codeigniter.com/">Code Igniter Home</a> › | |
<a href="../index.html">User Guide Home</a> › | |
Plugins | |
</td> | |
<td id="searchbox"><form method="get" action="http://www.google.com/search"><input type="hidden" name="as_sitesearch" id="as_sitesearch" value="www.codeigniter.com/user_guide/" />Search User Guide <input type="text" class="input" style="width:200px;" name="q" id="q" size="31" maxlength="255" value="" /> <input type="submit" class="submit" name="sa" value="Go" /></form></td> | |
</tr> | |
</table> | |
<!-- END BREADCRUMB --> | |
<br clear="all" /> | |
<!-- START CONTENT --> | |
<div id="content"> | |
<h1>Plugins</h1> | |
<p>Plugins work almost identically to <a href="helpers.html">Helpers</a>. The main difference is that a plugin usually | |
provides a single function, whereas a Helper is usually a collection of functions. Helpers are also considered a part of | |
the core system; plugins are intended to be created and shared by our community.</p> | |
<p>Plugins should be saved to your <dfn>system/plugins</dfn> directory or you can create a folder called <kbd>plugins</kbd> inside | |
your <kbd>application</kbd> folder and store them there. Code Igniter will look first in your <dfn>system/application/plugins</dfn> | |
directory. If the directory does not exist or the specified plugin is not located there CI will instead look in your global | |
<dfn>system/plugins</dfn> folder.</p> | |
<h2>Loading a Plugin</h2> | |
<p>Loading a plugin file is quite simple using the following function:</p> | |
<code>$this->load->plugin('<var>name</var>');</code> | |
<p>Where <var>name</var> is the file name of the plugin, without the .php file extension or the "plugin" part.</p> | |
<p>For example, to load the <dfn>Captcha</dfn> plugin, which is named <var>captcha_pi.php</var>, you will do this:</p> | |
<code>$this->load->plugin('<var>captcha</var>');</code> | |
<p>A plugin can be loaded anywhere within your <a href="../general/controllers.html">controller</a> functions (or even within your <a href="../general/views.html">View files</a>, although that's not a good practice), | |
as long as you load it before you use it. You can load your plugins in your controller constructor so that they become available | |
automatically in any function, or you can load a plugin in a specific function that needs it.</p> | |
<p class="important">Note: The Plugin loading function above does not return a value, so don't try to assign it to a variable. Just use it as shown.</p> | |
<h2>Loading Multiple Plugins</h2> | |
<p>If you need to load more than one plugin you can specify them in an array, like this:</p> | |
<code>$this->load->plugin( <samp>array(</samp>'<var>plugin1</var>', '<var>plugin2</var>', '<var>plugin3</var>'<samp>)</samp> );</code> | |
<h2>Auto-loading Plugins</h2> | |
<p>If you find that you need a particular plugin globally throughout your application, you can tell Code Igniter to auto-load it | |
during system initialization. This is done by opening the <var>application/config/autoload.php</var> file and adding the plugin to the autoload array.</p> | |
<h2>Using a Plugin</h2> | |
<p>Once you've loaded the Plugin, you'll call it the way you would a standard PHP function.</p> | |
</div> | |
<!-- END CONTENT --> | |
<div id="footer"> | |
<p> | |
Previous Topic: <a href="helpers.html">Helpers</a> | |
· | |
<a href="#top">Top of Page</a> · | |
<a href="../index.html">User Guide Home</a> · | |
Next Topic: <a href="libraries.html">Using Libraries</a> | |
<p> | |
<p><a href="http://www.codeigniter.com">Code Igniter</a> · Copyright © 2006 · <a href="http://www.pmachine.com">pMachine, Inc.</a></p> | |
</div> | |
</body> | |
</html> |