Full Throttle: Rapid Development with CodeIgniter and FUEL CMS
In the last two installations of my CMS review articles, I had focused on CMSs such as ImpressPages and CouchCMS that catered primarily to designers or end users, that is, folks who are not developers. In order to have a balance of power, we shall now shift our attention towards a Content Management System that is entirely meant for web developers and coders. In the following article, I will be taking a closer look at FUEL CMS, a modular-based framework and Content Management System. Which one is more powerful? FUEL CMS or this Mustang? Well, ...
Introduction to FUEL CMSHere is how FUEL CMS describes itself:
“It’s developed on the popular CodeIgniter PHP web framework and allows you to create your models, views and controllers like normal and only use the CMS part when and if you need it.”Yes, CodeIgniter. Basically, FUEL CMS is a flexible and developer-friendly CMS that comes with an Apache 2 license. Among other things, it features WYSIWYG editors -- not one, but two. You can choose between CKEditor and markItUp!. You can implement site-wide validation, create custom modules, associate variables, and so on. Its code library features module capabilities, menu builders and other objects; we shall return to the code library and other details later in this article. Also, for your clients, FUEL CMS offers inline editing, cron jobs, support for third-party applications, and several other features.
Using FUEL CMSSadly, there is no automated installer as of now. I will try to enumerate the basic steps that you need to follow in order to get FUEL CMS up and running on your server (I am assuming that you are comfortable setting up CodeIgniter websites).
- In order to install FUEL CMS, first download the package, and then upload it on your server in a web-accessible folder. However, ensure that /data_backup, /install and /crons folders are inaccessible. The default .htaccess file has them marked as inaccessible, so you need not worry much.
- Next, just navigate to index.php file, and follow the instructions. You do not necessarily need to have .htaccess enabled, but as already mentioned in the above step, the CMS does use it to prevent access to certain folders and enable mod_rewrite.
- Speaking of mod_rewrite, you do not actually need the mod_rewrite module for Apache, albeit it is the recommended way of using FUEL CMS. You will need to alter the .htaccess file to the proper RewriteBase directory (generally the root directory of your installation).
- Just in case you do not have mod_rewrite enabled, navigate to /application/config.php and locate $config['index_page'] and then change it to index.php (it should be blank by default).
- Create your database, and then install it by running the /install/fuel_schema.sql file.
- Next, configure your database settings at /application/config/database.php
- Pages: Pages are formed when you combine layouts with variable data. A page in FUEL CMS has additional properties too, such as a location (URL), status (published or not), and cache settings, etc.
- Layouts: As is obvious, a layout determines what variables can be used with reference to a specific page.
- Modules: Modules can be simple pointers or complex apps that can have properties of their own.
- Blocks: Blocks are just reusable elements that can be used across pages (say, footer and header).