Okay.
First of all, Steve, just because you can’t see the PHP doesn’t mean it isn’t there – the site map explicitly states that the site as a whole is run entirely on PHP. I’m guessing he’s storing just the text/HTML/whatever somewhere, and they get sent through a PHP parser which actually displays the title, the content, the navigational sidebar … Well, see below.
Hmm. Okay, I think I’ve got down what I’m going for … I want to be able to make a PHP-based website which does the following:
[ul]
[li]Have a hierarchical structure, so that a site map would look more or less like the one I linked to above. Any page can be an index/category/section/what-have-you (hereinafter “index page”), with one or more “child” pages. Any child can also be an index page. All pages must have precisely one parent except the main, which doesn’t have any. The “parents” must all lead back to the main page. Example: “email” is child of “contact” is child of “meta” is child of the index.
[/li][li]However, also like qntm.org, I want to be able to have all the files in one directory: I don’t want to type “index.php?id=index/meta/contact/email”, I just want to be able to type “index.php?id=email”.
[/li][li]Each index page must have a section in which all its immediate children are listed. (In qntm.org, they’re headed by “Today in [name] …”) I want to be able to have text both above and below this section, if I want.
[/li][li]A navigation sidebar bar which lists (a) all parents and grandparents recursively, and (b) all pages which have the same parent. (I’ll store the positions and stuff using CSS.
[/li][li]Store each page separately from the <html>, <head>, <body>, etc. Just the title, parent, and content.
[/li][li]Need to be able to access the title and parent from other pages, like for the navbar and the “Today In [name]”.
[/li][li]Should be able to put whatever HTML codes I want (within W3C standards, of course, but!) in the content itself. The ability to parse PHP code is also greatly preferred.
[/li][li]An optional “External Links” section at the end, but that would be relatively easy, and I have an idea of how to code that, assuming it’ll be using PHP …
[/li][/ul]
I have only a vague idea how to use this with storing the stuff in PHP files, and it involves Including whatever file I need (helpfully hidden inside a function so as not to, y’know, hurt anything). As well as hiding custom-for-this-one-file PHP inside a string and then using eval(), which is apparently fairly … unhealthy.