Skip to content

A neat micro CMS in under 300kb of PHP. Not actively maintained.

Notifications You must be signed in to change notification settings

nicbou/Ignition

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 

Repository files navigation

Ignition

What does it do?

Ignition is a dead simple micro CMS for sites that are too small for WordPress and other CMS software. It takes seconds to set up, and works on just about any website with very little effort. For instance, I use it to quickly convert static websites into client-editable websites on a budget.

Ignition makes use of Redbean, a tiny ORM that automatically handles table creation and object management. The code is included as-is in redbean.php.

How to use

Requirements

Ignition requires PHP 5.3, bcrypt and a database to run, that's it!

Although a fallback function is present, the strings used by Ignition use gettext for easy translation.

The files

  1. Copy the ignition folder on your website. Its location does not matter, as long as you can include it in your pages.

Setting up your database

  1. Create an empty database in cPanel, phpMyAdmin or a tool of your choice
  2. Edit the config.sample.php with your database credentials and save it as config.php

Configuring Ignition

  1. At the very beginning of your page, even before the doctype and PHP code, insert the following tag:
  2. To insert a block of text, use the following code: . There are other available types such as RawTextBlock (for plain HTML) and ParagraphBlock (converts line breaks to paragraphs).

The name of the block is simply used to identify the block. This also means you can reuse a block at different places on your site.

Editing blocks of text

  1. Add ?login at the end of your URL to connect. If it's your first time, you will be asked to create a user.
  2. Once logged in, you will be able to edit your blocks by clicking the "Edit block" link next to them.
  3. To log out, add ?logout at the end of the URL. Simple, isn't it?

Built-in block types

Currently, Ignition offers the following block types:

  • RawTextBlock supports raw HTML and doesn't escape tags.
  • TextBlock handles plain text, but escapes HTML.
  • ParagraphBlock converts double line breaks to paragraphs, and line breaks to
    tags.

How to extend

The default Block class in block.php defines the structure of a typical block. You can define your own by extending existing Block classes, adding features such as rich text editors and even file uploads.

Creating new blocks

Creating a new block is as simple as extending a class and redefining the required functions. The abstrack Block class under /ignition/blocks/block.php is an example of a working block. Once you are done, you must save your block under the blocks folder with a name ending with .block.php .

Using a different authentication method

The default authentication manager is in the authentication folder. You can easily create your own manager if you prefer to use another database. Simply implement the AuthManager interface and change the current manager in ignition.php.

Editing templates

The templates are located in the /templates folder, and don't use any fancy markup. Considering how light the code is (just under 26kb, not counting Redbean), extending any part of the application should be fairly straightforward.

About

A neat micro CMS in under 300kb of PHP. Not actively maintained.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages