Getting somewhere with my website at last
Some of you may know that my website is a completely home-grown thing. I started it way back in the day as an excuse to learn PHP/MySQL, and because there was no such thing as WordPress at the time. I’ve re-written it a couple of times over the last six years that it’s been database driven (there were older sites here that were flat HTML), and the last re-write was a big one. I’ve managed to keep the database for all that time, but with the last re-write I broke the administration section. So for the last three years or more I’ve been manually adding all posts into the database using phpMyAdmin. No longer!
This year I got off my ass and decided enough was enough, I’m writing a proper admin section. Today I got all the database stuff finished for the main posts, tags, and categories, leaving file-handling and media attachments still to do. The upshot is, as long as an entry doesn’t have any media attached or embedded (photos, pictures, video, music) I can now use the Admin panel. Some of you may not realise how long-winded adding a post has been, but let me remove that ignorance. Supposing I was to add a post with some photography, that means:
- Choosing the photos, selecting the one’s I want to publish (assuming a set of 50 shots to choose from, and wanting about 10 to publish, that’ll take about 30min on a quick day)
- Processing those 10 selected shots, usually at original resolution, then high res wallpaper (1920x1200) then low res wallpaper (1280x800) then the version you see here on the page (680xWhatever), then the thumbnail you see on the right (75x75). I sharpen each ‘drop resolution’ individually to get the best quality. Call it 8min per image ’set’ (80min total for this step)
- Rename each and every photo file to match the ID that is going to correspond to it in the database (1min per ‘ID’ group, or 10min in total assuming I make no numbering mistakes)
- Upload the images to the server via FTP (5 to 15min, depending)
- Write the actual entry. This step can be anything from 10min to 3hrs depending entirely on what I’m writing about. You would not believe how many modifications the average post here gets before I think it’s OK to publish. I’d say an hour and a half is about average for anything other than a quick-fire ‘of the moment’ entry.
- Assign the new post to a category, manually, in phpMyAdmin
- For each photo or media file, add a new record in the table comprising: Photo ID, Photo Title, Extension ID (jpg, gif, png, mov, avi, mp3, etc), Description, Date Published (Written manually. All dates as YYYY-MM-DD HH-MM-SS), Whether comments are enabled, Hits, and then embed any higher-resolution versions as HTML inside the description. Adding one photo to the database takes about 2min. So that’s 20min for ten.
- Publish the entry and manually check the page, all links, and all media. Do last minute corrections (there are always corrections. Always.)
So, one post with some attached photos or video will be, on average, about 4hrs work.
Perhaps you can understand why I stopped publishing so often over the last year or so. Anyway, now that the admin section is 75% there it means I can write posts as I go, and the hard-slog through the database is now gone. Soon, the slog with getting images in will be gone too. Hopefully this is going to knock a good hour off the time it takes to get a post live, and so I’ll be writing more as a consequence. Another nice benefit is that I can finally start using tags properly! I’ve had the feature in the database for years, but it was inconcievable to do tagging manually - it’s all ID’s and cross-linked tables. It’d take forever. Now I can just tick the tag and bam - there it is. Which is why you may notice a lot of old posts are getting tags on them. I’ve now tagged the last 315 posts, and there are 649 remaining to do.
And once the admin panel is complete? Well, perhaps I’ll think about that re-design of the website itself I’ve been on about for so long. It’d be nice to have tags that actually do something wouldn’t it? And a working archive… Among other things.