by joshbetz on 5/28/24, 2:40 AM with 174 comments
by askonomm on 5/28/24, 7:12 AM
Using globals everywhere and encouraging spaghetti code with its classic themes, and with its new themes it evidently learned nothing and is encouraging JSON inside HTML comments which obviously has no editor support, is very prone to errors, besides being just plain stupid (like seriously, some senior engineers I assume decided to have templating inside HTML comments as JSON?). If I had my tinfoil hat on, it's almost as if they actively try to kill the freelancer or digital agency market and push everything to its WYSIWYG site builder on WP.com.
by ssalat on 5/28/24, 4:39 AM
Having spent the last 2-3 months working excessively on WordPress development, I would like to say a word about the excellent isolation of code with blocks ("Gutenberg"). As standalone plugins or in combination with Advanced Custom Fields, these allow for perfect, modular websites and development flows (design system), where even the HTML is 100% in your own hands. I can recommend everyone to understand and learn WordPress properly.
– no relation or connection to WordPress.
by JodieBenitez on 5/28/24, 5:03 AM
by Swizec on 5/28/24, 3:35 AM
So many cool projects die because people over-complicate the first steps. You can always make it better later if people start using your thing, but first you gotta ship.
by jaydeegee on 5/28/24, 4:47 AM
by thisisjaymehta on 5/28/24, 3:47 AM
by TBurette on 5/28/24, 7:49 AM
For some it means clicking around installing theme, plugins then writing the content of pages through the Wordpress admin.
For others it means old school php code to customize Wordpress behaviour with PHP template to write the HTML. This is called classic theme.
For yet other people it means writing JS+React with docker, CI/CD,... This is the new block theme.
by NKosmatos on 5/28/24, 5:54 AM
by rob74 on 5/28/24, 12:15 PM
by throw5345346 on 5/28/24, 5:22 AM
Like everything, it takes learning. It has opinions.
It has some crazy history (I really wish media items were not handled the way they are), but it also has methodology to it.
If I said I know Go and JS and Perl and Java and Ruby and C, and I was enraged that Rust is so hard to learn, I'd be shot down for it, rightly.
WordPress looks like it does a simple job, but actually it's a whole, quite broad platform. You might have to read some documentation for a bit.
And if you've inherited a site using Elementor, ask the people who made it how to change the simple stuff, because they will be able to help.
If you've inherited a site using Visual Composer or Divi... shoot the people who made it.
If you think Gutenberg is bad (it is very much not, now!)... oh man, Divi was a time.
by zelphirkalt on 5/28/24, 7:25 AM
I used a unicode symbol for something in text. Wordpress out of nowhere and by itself decided, that it would be better to replace that symbol with a bloody svg, that is loaded from some third party. At first I could not believe my eyes, then it dawned on me, how incredible reckless they acted with that update. They must really have no clue what they are doing.
Then I scrambled to reverse this bs and tried various things, including editing the theme minimally, which originally I never wanted to do, because I do not want to maintain a theme in addition to the site. Well nothing worked, except for installing a plugin, whose sole purpose it is to reverse this stupidity.
If I had not had functionality connected to the DOM structure around my unicode symbol, I might not have noticed it, because that functionality also broke.
So there we go, WP automatically making the site violating the law by loading from third party without consent and also breaking my functionality and basically forcing me to install a plugin to correct WP core mistakes. Of course it is very clear now, that it is completely unfit for any business website, when the core developers make such bad decisions. It requires constant maintenance, even if you update nothing but WP itself. Alternatively you let it get outdated and get hacked due to vulnerabilities. Great.
by MangoCoffee on 5/28/24, 4:52 AM
by liampulles on 5/28/24, 8:01 AM
My sister co-owns a very basic architecting firm, and they have figured out WordPress based on online materials to design a website that suits them pretty well. Maybe that is not the long term solution for them, but it is a very productive place to start for a small business.
by Raed667 on 5/28/24, 9:06 AM
A user profile display was ~30 SQL queries (who needs cache), and my poor 5$ VPS was sweating ...
learned a lot on what not to do! fun times !
by graiz on 5/28/24, 4:27 AM
by dep_b on 5/28/24, 10:38 AM
But I admire the way the web was democratized with these CMS’es.
by muglug on 5/28/24, 3:58 AM
The downside is that much of the code in WP core is effectively un-modernizable, given how much depends on things working a certain way. Key classes and functions haven’t been meaningfully updated in over a decade.
by aussieguy1234 on 5/28/24, 8:23 AM
by Kye on 5/28/24, 10:56 AM
Unfortunately, WordPress seems to move further and further from this every year. I've used WordPress from near the start, and the editor is so top-heavy now that I get anxiety opening it. Switching to Ghost (with a nice little $4/month managed host[0,1]) was a breath of fresh air.
It doesn't do all the things WordPress does, but it does the things it does do better. Especially newsletters and pay gating.
[0] Referral link: https://magicpages.co?aff=9fLJierQBpnV
[1] Non-referral link: https://magicpages.co
by p4bl0 on 5/28/24, 6:55 AM
These days I prefer Dotclear as a blog engine. It also has grown in complexity over the years, but not quite as much and still feels like nothing is getting on your way.
This is from the point of view of someone knowing how to program and the languages involved (PHP, SQL, HTML, CSS, etc.) but who's not a professional web developer and even less a professional WordPress-based developer (since this is now actually a thing).
by zubspace on 5/28/24, 5:20 AM
What I struggled with are: 1) Interesting site design, 2) custom functionality through plugins, 3) making it easy to add pages and blog posts with a nice editor.
I'm glad open source solutions exist, but I swear, they always have drawbacks. Either they are code heavy, plugins are out of date, maintenance takes a lot of time or there is no way to easily design a page.
So for Wordpress I bought Oxygen, for which you can still buy a lifetime license for, and oh my god, even I can make a nice, responsive website without touching code. It's such a game changer.
I think lots of people avoid wordpress because of security. But that is not primarily a wordpress fault. Linux & PHP complicates it a lot. And I'm sure those other open source projects have severe bugs, too, but nobody knows or talks about them.
What could bring down wordpress, imho, are expensive license fees for plugins. Who wants to spend 50 to 100 bucks per year and per page for a builder plugin? Everyone wants one, but no one wants to pay yearly. And it seems that all plugin makers are starting to go that way.
by karolist on 5/28/24, 6:49 AM
The site generates PDF shipment labels for parcels, one day her sales got high enough to buy a label printer, one that spits out 10x15cm stickers. The problem - PDFs from the site come out as A4 and text gets tiny if squeezed to fit into that sticker. She asked her developers to fix it, they said it's impossible and refused. Now that's interesting, nothing is impossible I shouted with my nerd hat on. I'm in the tech space for a good few decades now, I have FAANG experience, complex systems are my thing!
I spent 5 hours diving through tons of spaghetti code plugins masquerading as highly abstracted set of interfaces to arrive at the conclusion that these guys were right, the PDF blob comes from the shipment company's SOAP API, though it's obfuscated deep enough. In the end I solved it with a simple PyQT+fPDF UI utility to crop out the printable parts and project them onto the right sized canvas for printing, it took me 2h to complete with binary packaging and all, less time than it took to understand why the WordPress site can't do it natively, and much less than than it would have taken me to integrate this PDF modification into WordPress. These guys were basically right.
Her site now backs up to 4GB zip with photo assets. I dread the day when her site goes down due to some "hack" but I have no idea how to replicate this functionality for this cost without WP. No way in hell I would say I can do it from scratch for her, my previous Web dev experience doesn't matter at this point. Shopify? Sigh.
by firefoxd on 5/28/24, 3:31 AM
by fjuan on 5/28/24, 4:19 AM
by henning on 5/28/24, 4:09 AM
by tambourine_man on 5/28/24, 4:17 AM
by DrSiemer on 5/28/24, 6:17 AM
Just make sure you stick to the base theme with a custom child theme and only use a select few plugins (like custom fields and contact form), that don't stab you in the back or begin to fight with each other later on.
I just still don't understand how Gutenberg is an improvement. It's so clunky and confusing to get even the most basic things done with it.
by k3vinw on 5/28/24, 5:34 PM
by stevesearer on 5/28/24, 4:32 AM
A couple essential ones for me are Advanced Custom Fields Pro and Admin Columns Pro.
by todotask on 5/28/24, 4:50 AM
by mattl on 5/28/24, 5:31 AM
by modernerd on 5/28/24, 8:02 AM
- The core update process. It's long been one-click. Almost no other CMS or self-hosted framework offers as smooth an update process. (With Laravel, for example, I end up paying for Laravel Shift and even then it requires manual intervention that would be hard for a non-dev to handle.) For WP, services now exist to do automated updates with health checks and rollbacks to counter potential plugin incompatibility[1].
- The plugin ecosystem. WP went from "democratizing publishing" to "democratizing user-owned sites and businesses". From learning management systems to stores to paid newsletters, it's pretty cool what people with no programming experience can spin up.
Things I'd love to see for WP in the next 21 years (that we'll probably get sooner if enough people contribute):
- Built-in multilingual support. The web is global but WP isn't really, yet, except via third-party plugins. It's on the roadmap[2] but it's been a long time coming.
- Improved education around Full Site Editing (FSE) and the new editor. The tools are getting good now, but there's still an education gap. Lots of people are helping to close this, though. Jamie Marsland's YouTube videos do a great job of showing what's possible with FSE, for example. [3]
- Background batch processing/queues. These are only available via third-party solutions (and bundled with things like WooCommerce), but should probably be built into core.
- SQLite support. Already pretty good but not officially supported in core yet.
- Built-in site migrations. Also on the roadmap.[4]
- Enhanced Playground tech. Distributing WP as a single binary for dependency-free local development (i.e. without Node.js) feels achievable and worthwhile.
- Version control. It's too hard to store a WP site's state in a git repo and keep that synced with production and staging environments, especially when those with admin access can install and upgrade plugins independently of the repo.
[1] Like Automattic's own scheduled updater on WP.com (https://wordpress.com/blog/2024/05/20/scheduled-plugin-updat...) and WP Engine's Smart Plugin Manager (https://wpengine.com/smart-plugin-manager/).
[2] Current state of multilingual sites in WP: https://developer.wordpress.org/advanced-administration/word...
[3] I like Jamie's videos showing how to recreate famous layouts with FSE: https://www.youtube.com/watch?v=WrdXCSIP578
[4] Site Transfer Protocol: https://core.trac.wordpress.org/ticket/60375
by tommica on 5/28/24, 4:21 AM
by smooc on 5/28/24, 7:31 AM
Dann I miss the underwater screen.
by skibz on 5/28/24, 7:53 AM
by dotcoma on 5/28/24, 4:18 AM
Yeah. Like, for example, forcing users to install the "Classic Editor" plugin to use, well, a normal editor that is more than sufficient for a blog.
by Pikamander2 on 5/28/24, 8:39 AM
The problem comes in with how many basic GUI-based features it's still missing out of the box 21 years later. Take, for example, the curious case of the lack of post cloning; Why is there still no "Duplicate Post" button in the core after 21 years? Why are over 4 million websites being forced to keep a third-party "Yoast Duplicate Post" plugin active in order to access a very basic CMS feature? The same goes for other GUI-based tasks like logging outgoing emails (WP Mail Logging), or viewing the scheduled cron jobs (WP Crontrol), or letting an admin temporarily switch to another user's account (User Switching), or downloading a one-click backup of the site regardless of host (All In One WP Migration), or managing the SMTP settings (FluentSMTP), or managing URL redirects (Redirection), or enabling SVG uploads (SVG Support).
The fact that many of those tasks can be accomplished through small code snippets in the child theme is great and all, but that doesn't help the average WordPress site owner who is barely tech literate and would be more likely to break the site than successfully copy a hook over to the correct file. It's not uncommon to find WordPress sites with 50+ plugins installed, a good chunk of which are abandoned and have multiple code vulnerabilities, yet still find the time to clog up the dashboard with useless "notices", AKA advertisements for their other products.
I could understand a lot of the missing functionality if WordPress was still a small FOSS project with no real funding and a few irregular volunteers, but the fact that's it's grown into what it is without any real plan to address those issues is just so frustrating. I've made a few small contributions to the core and read through a bunch of tickets for longstanding issues, and it's clear that time or funding aren't the problem; it's that the maintainers have an attitude of "We don't personally need that feature ourselves, therefore it can just be a third-party plugin", which might sound fine on paper, but...
Ever clicked on a Google link, only to catch a quick glimpse of the real site before being redirected to an "UPDATE CHROME NOW" or "CRITICAL MICROSOFT ALERT" or "CHEAP PHARMA PILLS" website? There's a 99% chance that site is running WordPress and has dozens of plugins and got hacked at some point, and if you try to message the site's owner to tell them what's happening and how they can fix it, they'll think you're crazy or a scammer and leave the malware there because it intentionally hides itself to logged in users. I'm not exaggerating about that percentage, either; WordPress runs a massive chunk of the modern web (excluding major social media websites), and the failure to quash the need for so many common plugins has made them a goldmine for bad actors to inject redirects and SEO spam.
by zwaps on 5/28/24, 5:26 AM
Nah
by nikolay on 5/28/24, 4:36 AM