License GPLv2
Author: | Dan Hartman (profile at wordpress.org) |
WordPress version required: | 3.3 |
WordPress version tested: | 3.9.40 |
Plugin version: | 1.4 |
Added to WordPress repository: | 25-09-2013 |
Last updated: | 01-05-2015
Warning! This plugin has not been updated in over 2 years. It may no longer be maintained or supported and may have compatibility issues when used with more recent versions of WordPress.
|
Rating, %: | 84 |
Rated by: | 5 |
Plugin URI: | |
Total downloads: | 4 632 |
Active installs: | 20+ |
Click to start download |
A WordPress plugin that integrates CodeIgniter
Why a CodeIgniter/Wordpress integration plugin?
-
I (along with many others) like CodeIgniter for it’s features such as ActiveRecord and MVC disciplines, plus I have a ton of cool libs and stuff in CodeIgniter that I would like to use in the WordPress environment
-
I’m getting tired of building custom user, login, and session management systems for CodeIgniter. WordPress has them already.
-
I’m getting tired of building custom look and feel and templates for CodeIgniter, WordPress already is that, and has thousands of themes available.
-
I’m getting tired of building custom feature X for CodeIgniter, when it may already exist in WordPress either natively or as a plugin.
Why did I create this plugin, even though some others already exist? Because I wanted to:
-
easily integrate CodeIgniter without invading its core very much, or optionally, not at all.
-
show CodeIgniter output in a page, preserving all WordPress menu structure, template structure etc.
-
not require template editing, so that templates can be easily swapped out and the CodeIgniter itegration still work.
-
allow customizing of the CodeIgniter APPPATH and BASEPATH variables, so that the system and application folders can be put somewhere outside the plugins folder (or docroot altogether for that matter)
-
handle segmented urls in CodeIgniter fashion, including paths that aren’t valid in WordPress (i.e. via WordPress 404 hooks), and dispatch to appropriate CodeIgniter controller functions.
Tips
- If your CodeIgniter controller sets the $this->content[‘page_title’], such as
$this->content['page_title'] = 'Blast off!';
then this plugin will set the template-rendered title to “Blast off!” via a WordPress API registered ‘the_title’ filter hook. - If you choose to tick the “CodeIgniter grabs all SEO urls” checkbox, beware that CodeIgniter will return its own 404 page (along
with http header!) on any non-root urls, i.e. permalinks. This behaviour can be set within CodeIgniter by adjusting the routes.php
file to point to a valid controller, like this:$route['404_override'] = 'welcome';
TODO
(I don’t know if these are even possible, or I might have already done them)
- provide a way to make CodeIgniter automatically use WordPress’ database settings, from within the plugin (yes I know I could intrude CodeIgniter core to do this, but it’s what I wanted to avoid)
- provide a mechanism to instantiate CodeIgniter only on the overridden page, rather than all frontend urls.
ChangeLog