Strongly disagree. Drupal is a great CMS and there's a reason the government uses it so extensively.
Strongly disagree. Drupal is a great CMS and there's a reason the government uses it so extensively.
I'd still choose it over WordPress any day. But the days when I'd recommend either of them (or indeed anything in PHP) are long gone. Your best bet now is probably a static site generator such as Hugo. If you insist on staying in database-driven CMS land, at least go with Django or Rails.
Static site generators are great for truly static content but that's extremely rare anywhere where content is frequently edited.
I have used Hugo in the past to generate websites from external content sources, such as trello, gitlab, GitHub, RSS feeds, Dropbox, headless CMSes, etc. Some of them provided webhooks to trigger the build, others required polling and periodic rebuild, yet others can commit to a git repo and trigger a CI pipeline. Most of the time, hugo was more of a composable solution to a given flow than a constraint i had to build around thanks to its capabilities to use "data content" and not only markdown files. Using json as the metadata "front matter" for documents often proved very handy when using API sources.
Hugo is very fast, so build time wasn’t a big concern. There was no incremental build however, so for a very large corpus it could be an issue. The most problematic issue is that Hugo doesn’t ever delete anything from a previous build, but overwrites on top, so that could be problematic if you involuntarily publish something and then want it off. The same kind of issues you get into with caching or object storage. My "solution" was the classic parallel builds, symlink and cleanup dance.
Would recommend.
Static sites are a tradeoff, and you’re often dealing with other messes especially with non-technical users.
It's also a security nightmare and runs dynamic code on every page load by default, so a fresh wordpress install in its default state will fall over when on HN on Reddit or Slashdot, unless you install third party caching plugins to avoid that.
It's a bad app.
Entire large businesses (WPEngine, for example) have been built upon the overhead costs from blog operators having to compensate for it being a bad app.
My close friend is one of the sysadmins for the WP instance mentioned in TFA. Pull back the curtain and it's pretty ugly and resource-intensive to run WP at scale; I've done it myself.
It seems easy enough at first, like you can just use whatever contributed modules you need, but that only works on simple sites (like the same ones Wordpress is great for). To use Drupal well, you have to actually know the APIs and write your own custom modules, otherwise the site becomes a buggy resource hog.
I like Drupal, I have multiple 8/9 sites I still run and I've used it since 6, but there's some pretty good reasons not to use it.
Drupal 7 lost some modules, and Drupal 8+ lost a lot more.