DIY CMS - Part 1



LilaWorks is a dynamic PHP website framework that uses text files in place of a database.  

How Does it Work?

If I'm making cookies, I need a recipe.  The recipe is a string of instructions that specify the ingredients to gather and the method for combining them.  In the same way, when someone clicks a menu page on LilaWorks, the server application uses a recipe to gather pieces of content along with instructions on how they should be displayed.  

The recipe for that page is the information encoded in a string of characters.  Each page has it's own string, compose of 'fields' separated by delimeter characters.. 

"Ingredients' are blocks of content.   This could be text, an image, links, or a menu for example.

Format for a page character string:

Title###layout###page-specific text###featured image###main section content blocks###sidebar section content blocks###footer content blocks

Example for a real page:

New Page###2-column-layout###This is a new page...who knows what you will find out!###new-image.jpg###latest-blog-post,,,###upcoming-events-box,,,,###latest-post-grid

Stayed tuned forPart 2...

Current Capabilities

So far, LilaWorks provides the following features.

  • an administrative area for authorized users and a login screen
  • a customization area for setting up the site title, logo, menu items, etc.
  • an area for setting up the components of a page
  • a choice of page layouts - 1 column, 2 column, etc.
  • an area for creating and editing posts
  • method for assigned post categories and status - 'draft' or 'published'
  • choices for how to display posts - full text, snippets, grid, etc.
  • an archive page showing previous posts by categories and date
  • an area for uploading images
  • a comment function for commenting on posts
  • an area for approving or unapproving comments for display
  • an area for creating and editing 'content blocks' such as sidebar messages and images
  • a method for preserving backups of pages and posts
  • collections of portfolio items that can be displayed as a grid or a slideshow
  • a method for arranging portfolio items in custom sequences

LilaWorks could  be useful for two groups of people: bloggers/website owners who want an easy way to set up their website themselves, and designers who need a quick way to update and maintain websites.

The out-of-the-box framework allows the user to set up a header and add menu items, pages and posts and images. Specialized options can be provided by the designer with very little effort.


LilaWorks Demo

If you are curious as to why I decided to do this, when there are so many CMS frameworks already available, you can read about it here.

Warning: This is not very complicated. The only code used is basic HTML, CSS and PHP. The only package I used was a free version of CKEditor.

Category: tutorials

Leave a Comment

Comments for DIY CMS - Part 1