The past week or so I have spent a bunch of time working behind-the-scenes on this WordPress site. My first priority was getting a handle on the new-ish system for creating and displaying sidebar blocks. Since WordPress 5.0, the goal of each subsequent update has been to make as much of the backend operate like the Gutenberg editor. When that change came to the widgets interface it ended up conflicting with a number of plugins that I was using: mainly contextual widget display and the sidebar nav. The side-nav is gone, and now I am using logic within my theme files to determine which sidebar items get displayed. So far it all seems to be working.
My next big change was to clean-up and consolidate my CSS so that I could use a single template to render the various content types on this site. In the process I have re-added a few pages that I had created in Views back on the old Drupal version of this site. Art and Retro-Computing feeds are back. Many of the reviews pages now have alternateviews.
I fixed a bunch of little details all over the place and have made it so my artworks exist apart from my posts (even though they are in this main home page feed). The final change which I have yet to get to is making the navigation more mobile friendly. I never look at the Web on my phone, so this is low-priority for me.
I have been using my new WordPress site for about a month now and can say that I am very satisfied with how everything is working. So much so that I would really like to convert all my sites to WordPress, if not for the fact that hand migration process from Drupal was a horrible pain.
WordPress is much faster than Drupal. Even without a caching plugin I am seeing my pages load up super quick. With the cache enabled—which, as an editor, I don’t actually see—the pages load almost instantaneously.
The Gutenberg editing interface takes a little getting used to, but works very well especially with the addition of the EditorsKit plugin. Adding images and media like YouTube embeds or audio files is completely hassle/code free. The EditorsKit plugin adds in the all important Insert Special Character function and a few other less common HTML tags like `abbr`.
Askimet provides spam-blocking that actually works. Drupal used to have a great anti-spam service in Mollum, but that was unceremoniously discontinued and the floodgates of spam opened up. In a related note, WordPress comment moderation is very simple and clean and, for the time being, I actually like seeing pingbacks
With the right plugins, creating custom content isn’t as bad as I originally thought. I had to pay for the unlimited install Advanced Custom Fields plugin, but, between this site and my work projects, it has been well worth the investment.
Finally, as I have stated before, updating the site is a complete breeze. This was my main reason for making the switch to WordPress. Click a button and the WordPress core is updated! The latest version allows me to tell the system to install updates automatically based on a per-plugin setting. Coming from Drupal, this is life changing.
It’s not all hearts and rainbows here in WordPressland. There are still a few areas that could use some improvement. First and foremost is that lack of anything like Drupal Views. Views allows front-end users to display site content in any manner they can imagine without needing to touch a single line of code. Instead, I am stuck having to hand code queries into WordPress PHP template files. The query code is relatively easy to learn but every little tweak you want to make requires hours of combing through help forums and documentation for an answer. I still have no idea how to add filters to my various Reviews lists. In Views you just expose a filter and poof you have a dropdown or a field that visitors can use to narrow down a list.
I’m sure there is a plugin for this, but I would want to set up automated backups of the site. The WP All-in-One Migration plugin makes backing up easy, but I can figure out a way of making it run on a schedule.
While the front-end of the Media Library is excellent, WordPress is constantly creating unnecessary image copies of every image I upload, regardless of context. This means there’s a lot of unused junk in my uploads directory. It’s not horrible, but my Internet ’98 mentality wants me so save as much hard drive space as possible.
Most of my other complaints are about things that could be accomplished with a module in Drupal but require PHP coding to do in WordPress. Off the top of my head: highlighting a menu-trail based on a content type, customizing RSS output, custom menu blocks, etc.
It took about two weeks, but I think I have finally finished converting this site to WordPress. The bulk of that process was copying and pasting every post into the new system. I’m sure I probably goofed up a few posts along the way and there are bound to be many broken links. But I think was very thorough, going as far as copying every single comment and tag description.
My reason for moving away from Drupal was my general disappointment with Drupal 8. Nothing ever seemed to work exactly right. I’d make a few changes on the back-end and the site would unbeknownst to me be put in maintenance mode. Several key plugins withered on the vine and stopped working. The built in WYSIWYG editor was absolute garbage. And the worst part of it all was the horrifically user unfriendly update process. There are modules that require Composer to install and update and others that are always in pre-release dev states. No thanks. After a decade of loyal advocacy and usage, it was time to bid Drupal farewell.
I have built a couple WordPress sites for work this year and now feel much more capable in this system. The main disadvantage of WordPress is its lack of a Views plugin. If you want to get creative with outputting data, you need to dive in to .PHP files and WP_Query() loops. There’s a massive user base, so finding help on the Internet is fairly easy and, once you understand the basics, you get an idea of how to accomplish tasks.
As I type this, I am prepping to launch the site. Hopefully all will go well. Having never run a WordPress site with comments enabled I worry that I will find myself buried in comment spam.
This was all a big mistake. Upgrading to Drupal 8, that is. Nothing ever works right and Drupal hates casual users. I am now in the process of converting this site to WordPress by migrating every post by hand. There’s about 1700 posts so it’s going to be a while. There’s probably a plugin that can automagically do this, but the biggest con of WordPress is that good plugins aren’t free. Sigh.