I had to skin a Photopost installation for a client and was assuming it would be relatively straightforward, like most template systems. Being used to
vB, I suppose I've been spoiled by their fantastic template system, but I've worked with others before and after a slight learning curve I'm on my way.
However, such was not the case with Photopost. While the program itself is great, especially for forum integration, it's major pitfall is the template system. Frankly, it could do with an overhaul. Instead of just complaining pointlessly I've compiled a short list of specific things that need to be addressed.
Poor documentation: There needs to be more documentation, at the very least comments in the code, specifying the location and filename of each template, and how to call it. A quick example: the variable $comq does not immediately suggest the quickcom.tmpl template. Why can't it be called $quickcomment? Small change, but it would make a world of difference.
Also, that brings me to a quick note about consistency: the quick comment element is called with a variable, i.e $comq. However, the rest of the templates, like cathead and albums, are called via a PHP include. There's no reason $comq (and probably others that I haven't found) should be called in this fashion, and not like the rest of them. Usually when a variable is called I expect it will be found in the PHP file for the page, like most of your other variables (all the {$xxx[x]} variables, for example).
There is far too much markup "hard-coded" into the PHP files. Image display, phrases etc come to mind. The user SHOULD NOT have to hunt for this through thousands of lines of code. A template system is supposed to be versatile. Having small bits here and there hidden in PHP code severely limits your purposes. For instance, there should be an easy way to edit the language phrases to your liking. There have been times when I've wanted to change words or remove a question mark in a phrase (eg. 'Recent Posts', 'User:,' etc) and I have to dive into the PHP files. Not fun, especially when I have to look through two or three files before finding what I want.
And the reverse of the previous one..
Too much code in the markup. Templates should contain as little code as possible, and as much markup as possible. For example,
vB's templates have simple variables ($threadlist, $postbit, etc) to specify elements. It's unexcusable to have so much code in the template files so that the user must wade through it. I'm lucky I have a basic knowledge of PHP, otherwise I wouldn't have been able to figure out what all the code was for.
I realize that there are certain elements of code that must be present in the templates, such as elements that can be turned on and off in the control panel. But these could be either simplified, like
vB does with their <!if> tags, or cleaned up considerably.
_____________________________
Making those changes would, in my opinion, drastically improve the usability of the template system. There has to be more versatility within the templates in order to allow full customization, and prevent the homogenization of all Photopost sites.
Thanks for reading this, and I hope some of these issues may be addressed for future users.