Changes ... by Kiwi
So, I’ve just completed my third ground-up recode of the website after deciding to leave Wordpress and go back to my first love, ExpressionEngine (which I had used since it was pMachine and still use on a personal blog). While WP can be a great tool and is so mindlessly easy to set up, plugins can be costly and you don’t necessarily have full autonomy over how to display your content. And let’s face it, Wordpress is a bit of a hack magnet. I was getting constant emails about site-lockouts or security holes in plugins.
While I had a valid license for EE, once it went open source, I knew it was time. I also knew I could recreate all the functionality I had, use far fewer plugins to do it and ultimately have more control over my output. I just needed to sit down and do it. So I did. More than once, as it happens.
Change is inevitable — except from a vending machine.
~Robert C. Gallagher
Round One - I installed EE, coded the templates (Bootstrap 4 is the base for the design), then worked on pulling in all the data. Luckily, I’m already used to the templating language EE uses, and even though I needed a little bit of a refresher, it’s easy enough to get the hang of. For the most part, it was just time-consuming.
And then I realized that in my rush to get it built, I hadn’t thought things through too well.
I was repeating a whole lot of information by having to enter it more than once. For example, I was adding the book data (title, synopsis, purchase links etc) for a mail post and then adding it all again for the review. That didn’t make a lot of sense. I needed to go DRY (Don’t Repeat Yourself).
Round Two - Because I’m a little anal about messy databases, I started over with a fresh install in a subdomain (thank you to my amazing VPS host, DigitalOcean) and created a new “book info” channel that I could pull by telling it where I wanted it, and then using a simple tag pair, just like this ...
{books}{books:title}{/books}
As a bonus, I eliminated a bunch of custom fields - yay! The rest was a whole lot of copypasta.
Until another realization hit. Although I wouldn’t have to add the last book in his Jane Hawk series a second time, I was about to add the URL for Dean Koontz’s Instagram account for the third time.
I had to get DRYer.
Round Three - Back in the subdomain, with yet another fresh install, I added another new channel for author info (and kicked myself pretty hard for not thinking about that before). So now I have two channels that are filled with data that can be used anywhere I need it. Like this ...
{books}{books:title} by {authors}{authors:title}{/authors}{/books}
I also retooled the base design and re-coded the templates, and because I’m fairly certain I’m certifiable at this point, I recreated the images. There were quite a few other tweaks, such as simplifying my field names and moving all my images and static files to a subdomain to eliminate some cookie nonsense, but I *think* I’m happy now. Or, for now. I can never be too sure.
If you happen to see something whacky, please, please let me know! I can’t fix any issue if I don’t know it exists!
Tag Cloud
- historical
- wartime
- bookishfirst
- st martins press
- public library
- kobo
- kindle
- nook
- domestic noir
- thriller
- atria books
- 4.5 stars
- twisty
- botm
- 3.5 stars
- book club
- sci-fi
- crown publishing
- action
- nerdishbiker
- strong female
- bloodhound books
- quick review
- dystopian
- suspense
- debut
- lake union
- true crime
- nonfiction
- fbi
- doubleday
- dutton
- dark
- supernatural
- netgalley
- berkley
- thomas & mercer
- series
- international
- oak house press
- mira books
- three rivers press
- self-published
- conspiracy
- mystery
- bantam
- memoir
- thomas nelson
- humor
- ballantine
- minotaur books
- biker life
- grand central publishing
- austenesque
- celadon books
- crooked lane books
- 3 stars
- 4 stars
- 2 stars
- 5 stars
- kiwi
- admin