ATTENTION: You are viewing a page formatted for mobile devices; to view the full web page, click HERE.

Removed Areas > DonationCoder Projects

Flat File Mini CMS in PHP

<< < (3/4) > >>

looked at the latest batch - still no good.

i like the idea of a kind of commandline script-driven website builder.

to reiterate my main ideas:
you have a content directory tree, and a public_html tree.
and a WebsiteBuilder commandline tool with configuration script that tells how to build the public_html website tree from the content tree.
basically the content directory will contain content pages that get built into html/php (or whatever) files by applying and expanding templates, and embedding a navigation menu system.

the WebsiteBuilder tool will use a template system (smarty templates with custom extensions) that will enable it to extract forum posts and threads info (and maybe other things) into the generated web pages.

Website is static html (or php) pages which can be automatically updated frequently whenever embedded content might change (even if content changes once per second it would still be a huge cpu win for heavily accessed pages).

content pages will have a consistent navigation bar/menu that is automatically generated.

allows for using various formats for writing content pages including wiki syntax, bbcode, or normal html.  that is - the WebsiteBuilder is agnostic about the format of the content files - in some cases you may want to custom write an html page - in other cases you might want to let users submit bbcode content - in other cases you might want to use a wiki system.  The WebsiteBuilder is simply designed to take some content in a content hierarchy tree and build it into a static website, using extensions that help it understand how to render bbcode/wiki/etc into html (these things already exist).  Good for search optimization and speed, etc.

on top of this you could layer a user-management based article writing system which allows certain people to create content in certain content directories, or just give people ftp access to certain content subdirectories.  and then just have a way to trigger a rebuilding of certain pages/subsections of the website.

again the advantages are:
1) a super fast access website which requires no backend script handling visitors and requests.
2) totally agnostic website content builder separated from content generation (ie the builder doesnt really care how much of website is hand written, or if pages are html, bbcode, wiki, ruby, etc.) - it only has rules about how to create publically accessible static pages from content page.
3) it separates the content creation and editing engine from the website building/rendering engine.
4) all the content is in normal flat files organized into a structure directory.

just for any industrious coders, let me try to describe the first early functional WebsiteBuilder tool:

You would run it like:
WebsiteBuilder.php MyConfigFile.php

where MyConfigFile.php is a php-based configuration file that might say:
$content_directory = "/home/mouser/websitecontent/";
$publichtml_directory = "/www/";

And the job of this first minimal WebsiteBuilder would simply be to create a mirror copy of the content_directory in the publichtml_directory.


Later work would:
1) render the files through smarty templates to generout output versions for the publichtml directory
2) generate a navigation menu
3) allow some directives in the configuration file which might specify some restrictions in certain content directories
(this would allow you to give a person ftp access to a subdirectory but ensure that only bbcode content files they upload will be rendered into public pages).
4) allow commandline to specify the generation of only specific pages.

I read most of the posts on this subject on different posts, but so far no mention of WIT. I think it will appeal to you given the conditions you listed. Take a look

does it have to be php? (that's server side)

he, you're right in a way about webideatree creating a flat file website.
I think of it as an outliner / thinking tree type program, but it is meant to generate a website from the contents at the end.


[0] Message Index

[#] Next page

[*] Previous page

Go to full version