Customizing Graffiti CMS, part I

There were several reasons for choosing Graffiti as the CMS for my blog, but I suppose two were at the forefront: first, it was written in ASP.NET, and second it was very customizable, even to the point of writing plug-ins in C#. Since, in theory, I know this platform, this made it an attractive choice.

But, and what a big but, the documentation for all this is pretty bad. Ugly I'd say. All of the help is written with and displayed in Graffiti, and there doesn't seen to be any rhyme or reason to it. Also the basic documentation is at one end of the spectrum ("you know nothing") and the advanced at the other end ("we assume you know an awful lot, but we aren't really going to tell you what you do know"). It also doesn't help that the topics are in descending order of being posted.

Since I disliked the themes that came with Graffiti, the first port of my customization call was simple theming.

To create a theme you need at least four files. The first is the obvious one, a CSS (Cacading Style Sheet) file. The other three define the three basic views of a Graffiti site: layout.view, index.view, and post.view. Actually that isn't quite right: the layout.view file defines the basic layout of each page on your site, and the other two are refinements. index.view defines the layout for a list of posts, and post.view defines the layout for a single post. The views are in fact HTML documents with some special markup that causes Graffiti to inject other views into the HTML.

In other words, layout.view shows the common parts of every single web site rendered by Graffiti. It will generally include the <head> element, and the beginning/ending <body> tags. The basic plumbing, if you like.

I'm getting old these days, and I never was a great designer, so I'd rather use someone else's theme than write my own from scratch. I was never really fond of my "theme" for the old web site (it looked pretty good, but it feels very brittle underneath), so I went out looking for themes to use and/or modify.

Don't bother with Graffiti themes, there just aren't that many. (With one caveat: collect them so you can look at how the author used the special Graffiti markup in the views. I've learned a lot from looking at how the markup is used. Oh, another thing: the special markup is known as "Chalk".)

Chronicles theme You don't have to look very far to see that there are a bazillion Wordpress themes out there. You can get free ones; you can pay for commercial ones that are more polished. The authors of the free ones generally ask you to mention them if you use their theme on your site.

After some looking, I found one called Chronicles. It's a very nice looking three column theme in shades of brown, a color I hadn't used before. I downloaded it and unzipped it. Yikes, PHP everywhere.

(To be continued in part II, part III, and part IV.)

Loading similar posts...   Loading links to posts on similar topics...

No Responses

Feel free to add a comment...

Leave a response

Note: some MarkDown is allowed, but HTML is not. Expand to show what's available.

  •  Emphasize with italics: surround word with underscores _emphasis_
  •  Emphasize strongly: surround word with double-asterisks **strong**
  •  Link: surround text with square brackets, url with parentheses [text](url)
  •  Inline code: surround text with backticks `IEnumerable`
  •  Unordered list: start each line with an asterisk, space * an item
  •  Ordered list: start each line with a digit, period, space 1. an item
  •  Insert code block: start each line with four spaces
  •  Insert blockquote: start each line with right-angle-bracket, space > Now is the time...
Preview of response