Making my CMS – Part 2

December 26, 2010   |   Reading time: ~2 mins

Hey Everyone! Time for a quick update on my PHP project. It’s going fairly swimmingly thus far. I’ve got a functioning core, now it’s time to start building it out and working out the bugs. Here’s some specifics on what I’ve been up to.

  • I’ve got a functioning Module Loader working, it detects and loads module frameworks, for now that’s pretty much it. These modules are classes which are instantiated and managed by the loader, they extends from a base module class so they inherit the frameworks that are loaded in that.
  • I also have built a theme rendering engine, this is what will output the actual page, The idea behind the system is that we initialise everything that will be needed in stage 1 of the execution and in stage 2 that is all placed into a theme where it’s needed.
  • I also decided that because I want to make the system as efficient as possible, I wanted to build a caching sub-system… so I did. It’s pretty basic, but because it’s not tied to a specific part of the system, if you code it correctly you can pretty much cache anything in the websites cache, I’m pretty proud of that. 😉

What’s Next?

I need to now start to do module / theme development on the system, in my mind that’s the only way I can tie down the framework. I think that some kind of module authentication / management system built into the module loader or base class might also go down a treat. I also need to start thinking about the back-end stuff like admin interface, settings panels and user management. I also need to try and implement scheduled actions to load modules and execute functions on startup of execution for something, like populate menu items and such. This leads me on to making an analytics engine. I want to write some form of analytics engine to track visitors and report pageviews. I thin I want to build it with an API so that other modules can report statistics to it. That’s the plan anyway.

Better get back to work. Thanks for Reading.

Leave a Reply

Your email address will not be published. Required fields are marked *


Sorry, there are currently no comments for this artcle. Why not start a conversation?