Headless Wagtail CMS: Serializing RichText Stream Blocks
Published November 29, 2023
This video features Kalob Taulien at Wagtail Space US 2022 in Cleveland, Ohio, USA.
Wagtail and WordPress both manage website content, are free, open source, and have large communities, but they suit different situations. WordPress is quick to launch and useful for simple, temporary, or early-stage sites, yet its plugins, themes, security risks, and scaling limits can make it harder to maintain as an organisation grows. Wagtail requires a developer and is harder to deploy initially, but its Django and Python foundation, flexible front end, permissions, workflows, editor safeguards, security, and scalability make it a longer-term investment for teams with more demanding needs. The speaker recommends starting with Wagtail when there is enough time and using WordPress first only when a site must be launched immediately or used to test an idea.
Summarised automatically from the transcript.
Automatically transcribed, so expect mistakes in names and technical terms.
Speaker 1: All right, good morning everybody. Wow, okay. First of all, it's nice to see everyone in person. Lots of familiar faces, lots of new faces. Welcome to the community, new people. For anyone that's watching this virtually, hello to Hello to you. And if you're watching the recording, hello at some point in the future. So I'm going to be kicking us off today talking about Wagtail versus WordPress. Now this is a high-level talk. This isn't a technical talk because We could talk about that for days, and that's probably its own conference, to be totally honest. So let's Get started with me. My name is Caleb Tallin. I'm the tutorial guy. You've probably seen learnwagtail. com or a YouTube video or a blog post or something about Wagtail, some sort of content out there.
Speaker 1: You've probably run into my name at some point. I'm also on the the Wagel Core development team. Now, before we get started, I think we should all get on the same page. What is a content management system? And you know, there's lots of different shapes, there's different sizes to CMSs, uh sort of maybe not different goals, but different ways they do things. And I came up with this this really, really good quote. It's a powerful quote, and it's gonna blow your mind. About like what a CMS does or what it is. And it's it's how you manage content on your website. It's a little anticlimactic, but that's that's really all it is. Every CMS has the same goal. They want to manage the content on your website in a way that makes sense. to your organization but in a way that makes sense for the developers that are also uh using that content management system
Speaker 1: All right, there are hundreds, maybe thousands of content management systems out there. There's lots to choose from. There are some that are like mentioned yesterday. I think there's one that's worth billions. They've been around for a long time, as far as I can remember. They've always been around. And usually they center around uploading images, documents, videos, and the core premise, typically for a web-based CMS is is this this idea of a page. And that's where you can put like all your images, your documents, your links, written text, all that good stuff. Now, some CMSs let you manage your design, your search engine optimization, a bunch of other things. And some just want to do one or two things, you know, pretty well.
Speaker 1: Now with Wagtail and WordPress, because you know they they do share the same goal. They want to manage your content in a way that makes sense for your organization. There's a lot of different similarities And I'm not gonna go through all of them because there's gonna be tons and tons of them, but some that really stick out for me. I think there's like six or seven points here. You know, there's lots of third-party tools and features that are usually free. Both are built for web website content management, not smartphone apps, not usually, but there's some blurriness there with headless CMSs. They are most popular for the respective programming language. So I'm pretty sure Wagtail is the most popular CMS written in Python today, and WordPress definitely is in PHP.
Speaker 1: Both are free, wildly popular, have great support, and are open source. So I needed to start with WordPress or Wagtail, and I just chose one, so let's start with WordPress WordPress powers one third of all websites. This is a big number. Now for context, and I'm gonna use old statistics here, but a long time ago when I looked it up, there were over two billion websites. There's probably significantly more now, but I'm gonna stick with two billion. So if there's two billion websites and WordPress powers one-third of them, that's over 600 million websites that are using WordPress today. Now just because it's big. Just because it's popular, just because other people are using it, doesn't necessarily mean it's the right content management system for you. You know, it might be, but you have to do a little more digging to make sure that it's the right one for you and your organization.
Speaker 1: It's by far the most popular content management system that's ever existed. It's it's huge. And it blurs the lines between needing a coder and no code websites It's got a powerful plugin ecosystem, which we'll sort of talk about a little bit later. One person can manage an entire WordPress website, and typically one person does. manage an entire website that way because if they can they usually do. It's got a famous uh five-minute installation which makes it super easy to launch. We'll talk a little bit more about that later. And it's the most targeted website system by hackers. And I mean, honestly, if you have 600 million of anything, you try one thing 600 million times at some point you're going to succeed. All right, I'm going to try to not be totally biased for or against WordPress and Wagtail.
Speaker 1: So I'm going to share some of the things that we don't tend to hear. For WordPress, that means using a programming language that's that's hard to extend advanced functionality. So if you want to get into video rendering, that's something I do all the time, or chatbots if those are still popular and cool to make You know, it can do those things. It's not really built for it, so you're pushing the boundaries of what it can do. WordPress was also written a long time ago with old programming practices, but It laid the foundation for modern content management systems. And I'm talking mostly about its its track of bad security for a number of years. And because they went through all those mistakes, modern content management systems like Wagtail didn't have to go through all those same vulnerabilities. Often plugins end up being a
Speaker 1: pretty big security concern. I should have thrown a stat in here, but it's something like 76 % of vulnerabilities uh plugin vulnerabilities were the reason that over 50% of WordPress websites, lots of W 's, WordPress websites uh were broken into. And so any, you know, if you choose WordPress is if it's for you or your organization, your portfolio, whatever project you're working on, just audit your plugins, please. There are a lot of bots that strictly target WordPress websites. So I got a fun little story. I'm going to share a few little stories here. When I first started Learn Wagtail, I was like, ah, just for fun while I'm populating the website, I'm gonna make learnwagel. com slash WP dash admin. And it looked like a perfect honeypot. And so I
Speaker 1: turned on logging and while I was populating the website, I was like, ah, I'll wait like I'll wait a month to see how many bots try to like break into this non-WordPress WordPress website. I didn't have to wait a month. I didn't have to wait a week. It wasn't even three days. Wasn't even an hour. It was literally minutes. And somehow they managed to find a brand new domain and tried to get into a website that wasn't actually a WordPress website. So that just sort of shows you that there are a lot of bots just strictly targeting WordPress websites. Developers also don't tend to follow best practices. Not all the time. There's obviously cases where different developers do, but Here's the thing, is if you have 600 million websites, there's probably a million people across the world on any given week that are working with WordPress. And you're gonna have people that that really know what they're doing on one hand and and people that are brand new and just making plugins for the first time.
Speaker 1: And there's a lot of variation in there. And most of that comes down to Like security. Are they doing things properly? Are they properly escaping data before it goes into the database? And a lot of times the answer is no, they're not doing that. And that can become a major liability for your business or your organization. So let's talk about some drawbacks to WordPress. Okay, WordPress, you know, most people tend to outgrow WordPress pretty quickly. Not always. Some people use WordPress very, very well. But I see this all the time. Where One person just says or a client says, I want a WordPress website. So we make them a WordPress website. And two to six months, maybe 12 months down the road, they say, I want to make something odd like a chatbot and and they think it's it it's better to use uh something made in-house and and just it it pushes the boundaries of what WordPress can do it all of a sudden.
Speaker 1: they've outgrown it for some reason, whether it's e-commerce or a chatbot or video processing or something like that. It just pushes the boundaries of what WordPress can do fairly well. It's also harder to scale and modify as your organization grows. TechCrunch. com famously uses WordPress and now I haven't seen their code base. But I've read that they really had to hack it up in order for WordPress to scale with all of their traffic, because they get a ton of traffic, and all of their editors, because they have tons of editors. Uh themes are usually generic and and rare, rarely unique to your brand. They rarely follow your brand guidelines. Now, again, 600 million websites, if you just like click-click install a theme. Like
Speaker 1: even if it's a paid theme, chances are there's thousands of other websites that look exactly like yours. And I don't know about anyone here, but I like my visual identity, uh my my web presence to look different from my competitors. That's really important to me Now you might accidentally break your website or make it super slow and have a hard time fixing it. I've got another fun story about this. I had a client a few years ago Really lovely lady and she said, I want a WordPress website because I've always used WordPress and I don't want to learn anything new. So I made her a WordPress website. It was it was modern, it was fast, it looked pretty good. It was a generic theme, but she was happy with it. And then we launched it and it was like four days later, maybe. She calls me in the middle of the night and she says, Caleb, I've got this big presentation tomorrow
Speaker 1: and the website is like taking 10 minutes to load. And I'm like, oh, okay, like, you know, I'll look at it first thing in the morning. Little did I know her husband actually liked to log into her account and install plugins. He installed 150 plugins and he tried to install a couple more that night to speed things up. Completely broke it to the point where like we tried to log into the admin and 10 minute timeout, 100% of the time, we just we couldn't get in. So they needed a developer on a site that typically doesn't need a developer or a content management system that doesn't usually need a developer. They had to get me to go in there and manually remove a bunch of code. And it doesn't leverage your entire team's experience. Now, I come from a startup background. I like hiring people for specific skills, right? Everyone here, everyone that's watching this has a specific skill.
Speaker 1: Whether it's development or design, SEO, advertisements, whatever that is, I want you to do what you do best. And because WordPress is one of those sites that kind of does it all, so one person tends to manage all of that you're not really leveraging your entire team's experience or expertise rather rather than experience So at this point you're probably thinking, Caleb, when is WordPress good to use? And I think there's actually quite a few cases when when WordPress is good to use. When you need a website up and running, like in an afternoon, like If you're at WagTil space right now and you're like, hey, I want to make I want to make a website by the end of Caleb's talk, like you could do that with WordPress. It's probably not gonna be great, but you could do that with WordPress. As a minimum viable product to test business assumptions. Okay, Groupon
Speaker 1: used WordPress in the early days. I think it was like a day or two days. They threw up a WordPress website with a big pizza logo that said two for one pizza, go in, use this coupon code. And they drove some traffic to it. And they they were able to validate their entire business. in a matter of a day or two using a WordPress website. Now they outgrew it very quickly because they're a very fast growing company, but they were able to test that business assumption and prove that they had something viable. I also think WordPress is good for simple marketing or information websites. It's often good for generic and temporary websites too. So if you're building a website for a restaurant that's that's uh opening up in six months and you know you're going to be reinventing that website. You know, throw up a WordPress website. It's it's quick, it's easy, and you don't have to spend a lot of time on it, especially because you're going to be spending more time on
Speaker 1: a proper website later. So my takeaways for WordPress, when starting a WordPress website, one, expect to outgrow that website probably faster than you think you're going to outgrow it. And two, I would just assume that you have to hire a developer to hack up. So if you've got like a really big blog and you have a lot of traffic, expect to hire a developer for a non-developer-e kind of CMS at some point. Okay, the good stuff. The reason why we're all here. Wagtail. Okay, I gotta try to dial down my excitement because I get excited at this part. I see organizations are constantly migrating to WagTap, right? I I see all the time people are moving from like WordPress to Drupal to WordPress to Django CMS
Speaker 1: back to WordPress. Every couple of years they reinvent themselves. But what I don't see. is is people going from WordPress to Wagtail and then leaving. They decreate Wagtail websites and they're happy with it for a very, very long time. It's very, very, very rare that anyone ever ever decides to move away from Wagtail. Massive organizations are investing time, money, and effort into Wagtail as well. You've got Google, the Motley Fool, JPL, Wharton, Mozilla, Twilio, the NHS, governments, you've you have All sorts of uh universities and different types of agencies, nonprofits are using Wagtail all the time Wagtail scales nicely as your organization grows. Okay, I'm gonna share a thing. I probably shouldn't share this, but my my website, learnwagtail. com, uh, runs on a $5
Speaker 1: digital ocean server. It's a multi-site, so there's six sites on there, and it's $5 a month. And as traffic has continuously grown over time, over the years, I've never needed to scale that up. Deploying a webtep website is not straightforward. Let's uh let's tuck that one in our back pocket for now. Uh we're we're gonna come back to that. It's built on a world-famous framework that developers love. Probably everyone in this room knows about it, but Django. If you've ever heard of Pinterest or Dropbox or Instagram, you know, they use Django. It also uses the world's most popular programming language, Python. If you want to make your developers happy, write Python. You do need a developer on your team to make major changes, but honestly, at some point.
Speaker 1: It doesn't matter what content management system you use, you're gonna need a developer somewhere down the line anyways. And your editors can't break Wagto websites easily. So I've got another fun story. I had a client about two and a half Three years ago and he was like, I want a WordPress website. I was like, no. And he was like, yes, I want a WordPress website. And I was like, no. And he was like, give me a W WordPress website. Why do you want a WordPress website so badly? And he says My co-founder breaks every piece of software he touches. He gets a new iPhone every five months. We get a new website every six months. I was like, what do you mean he breaks it? And he's like, oh, he just tinkers around and breaks things. And I said, I tell you what, I'll make you a Wagtail website, and if he can break it , I won't charge you for it. And I'll throw in a free year of support. That was almost three years ago. Haven't heard from them since. Everything is great.
Speaker 1: All right, what you don't tend to hear about Wagtail. Okay, launching a Python-based website is hard. I specifically said Python here because it's not just Wagtail, it's not just Django. I think it's most Python apps are just hard to launch on the web. Thankfully, it is a one-off task. And there are solutions out there. There's Heroku, there's new solutions coming up, but also definitely check out codered. cloud. I've used that one a little bit, and it's so easy to get your WagTab website up and running super, super fast. Simple design changes usually require a developer. Not always, depends on how the site is built, but usually it does. I think that's honestly a good thing. It's just, you know, you're leveraging your team's expertise again. Wagtail is typically built for teams, not individuals. I've got an asterisk here, uh, because that's not actually entirely correct.
Speaker 1: I'm an individual uh and I use Wagtail for Everything. And then I grow my team. And as my team grows, I can just quickly enable features like advanced workflows, or it comes with reports Or I can hire a contractor to write a blog post and I can see how many edits they've made and what kind of edits they've made. And if they made a mistake, I I can go and fix that mistake before I publish it. That's all built into Wagtail The editor interface is friendly, it's powerful, it's intuitive. Just for fun, I threw a client into a brand new website. I was like, here's your your username and password. And I was like, sync or swim. Like figure it out. And they did. They didn't have to ask too many questions. They were like, oh, I just have to click edit and I can edit a page. And all I have to do to preview is click preview. Easy enough.
Speaker 1: They figured it out. Pages create friendly URLs by default. This is nice. Not every CMS does this, but it's great for search engine relevancy. Think like your website. com slash blog slash your blog post. All your blog posts are grouped together. Search engines love that kind of thing. It's unopinionated about your front end as well. And I think this is a really, really powerful point because Wagtail tries to do One thing really well. Manage your content. That's what it wants to do. It doesn't want to dictate your life. It doesn't want to tell you exactly how you should be building a website. It doesn't care if you're using Tailwind, Bootstrap, rolling your own CSS. It doesn't care if you're using View, React uh Svelte, Angular, Vanilla, JavaScript, none of the above. It doesn't care. It just wants to do one thing really well. That's manage your content.
Speaker 1: Headless sites are common and easy to create with Wagtail and is supported by today's top digital agencies like Torchbox, Code Red. You've got four digits, there's a ton. I'm sorry, I can't mention all of you. There's not enough time for that. But they're working with world-class companies like the Googles and the Mozillas of the world. Drawbacks to Wagtail. It is hard to launch at first. I'm not gonna lie. That's pretty tricky for most people. Unless you're a DevOps person, then it's pretty easy. But for most people, it's kind of tricky. It does require a developer. You're going to need a developer anyways, doesn't matter what content management system you use. One person doesn't manage the entire website on their own. Not usually, but you know, you can if you want. There's no explicit like plug-in ecosystem. So developers tend to use packages instead.
Speaker 1: And this is, uh how would I explain this? Plugins are like click click install and you have a thing. Packages are like type type install and you have a thing installed usually properly. So when is Wagtail good to use? I'm not going to go over all of these because there's just quite a few points here. But hey, do you want to make your developers happy? If you do, Wagtail is probably for you just based on that. If you need a pixel perfect design that honors your branding and your visual identity, that's really important to me. Security and scalability is important to not just me, but to everyone that's using Wagtail. And that's one of the reasons that I love Wagtail so much is I don't have to worry about scalability too much. And I don't have to worry about security. If there's a new security uh vulnerability, I just upgrade Wagtail and away I go.
Speaker 1: When you need permissions, moderation, advanced workflows for your editors, if you have contractors coming into your website and you don't want to give them full permission to do everything, that's another good reason to use Wagtail. Differences? I basically spent the last 20 minutes talking about this, so we're not going to spend too much time on this slide, but it's here for reference later. Okay, with Wagtail, yes, yes, I would say you do need a developer for a Wagtail website. Uh but you also get loads of power and tons of features right out of the box. And whatever Wagtail doesn't come with, usually you can just install a third-party package and it just works and it's free. Uh WagTel's gonna serve you for as long as you need it. Again, I've never needed to move away from Wagtev ever for any reason.
Speaker 1: And most importantly, Wagteb websites are investments for your organization. I like to think of it like this. That line is not entirely true, in the sense that every website should be a good investment. for your organization, but they they aren't always. And with WordPress, I find it's it's good at the beginning until you outgrow it. So it works for you until a certain point and then it just stops and it's working against you. It'd be like buying stocks or cryptocurrency or gold or silver and then making a bunch of money off of it and then all of a sudden your money's gone, right? It it starts taking money out of your bank account. That doesn't really make sense, but Wagtail will scale as your organization scales up or occasionally scales down if in if you're in the startup world like me. It will always be there for you no matter how uh how far along
Speaker 1: how far along you are in your your organization's uh growth plans. So which one's for you? I mean do you need a an unbreakable website? Do you need specific permissions? Is documentation important? Do you need support? Do you need open source community? If these things are important to you, Wagcal is probably free. If you just need a temporary website up and running like right now, you know, WordPress might be a good temporary solution. If you need unlimited flexibility without any sort of responsibility, and I see marketing teams do this all the time. Marketing teams are like, ah I need to be able to like hack up everything and we need to test everything. You know, WordPress is probably a good option for those types of people. Okay, if if you have a WordPress site and you're like, I want to migrate to
Speaker 1: Wagtail or even just check it out, there's a cool package called Wagtail WordPress Import. It's built by our friends at Torchbox. It's open source. There's a blog post that goes along. with it. Definitely check that out. Even just try it because the two systems are so different. You can't really just copy and paste over, or you can, but that's no way to live your life. It'll just help moving a lot of data over from one system to another. It'll make it so much easier and you probably won't pull out your hair using this package. All right, that is it for me. For questions, maybe you're watching us at a later date as a recording. Feel free to reach out to me. on Twitter at Caleb Tollin or feel free to join our Slackwagtail. org slash Slack is a free community. Come audit it, see what people are asking.
Speaker 1: Just come join us. All right, thank you. I
Speaker 2: just want to congratulate Jesse for eliminating 11,000 websites from CRQs. So WordPress now only powers one quarter of these.
Speaker 3: Do you want to say that for the audience?
Speaker 1: Uh yeah, can you say that again and I'll repeat it up here?
Speaker 2: Yeah, so Jeff, you you say it, you did it. What was it? So you you you took Syracuse is now down to 3,000 WordPress sites from 14,000.
Speaker 1: So Syracuse is down from 14,000 websites to 3,000 WordPress websites. So they've eliminated eleven thousand WordPress websites. So when I said WordPress power is one third of the web, it's probably way less now. Uh
Speaker 3: so I didn't see any questions in chat quite yet, but do we have have any questions in the in person? Right?
Speaker 4: Um is there anything that kind of core principles of getting your organization to not look at WordPress as a or to to to kind of the the facts you put up on the board is you know showing them the actual woes of word Press is there anything that you can advise that given that much?
Speaker 1: Um the question is is is can I advise on um I guess showing an organization the the I guess the pros and cons of of of WordPress. Yeah, I I like to personally just uh create a WordPress website and then I use this tool called Locust. Right. And I just throw a little bit of traffic at it. So I had a friend just a couple of weeks ago, he's got a WordPress website, and uh he had 50 people hit it at the same time in one minute over this they were there for about an hour, but 50 people couldn't load the website and it was just a generic WordPress site. So it wasn't able to scale very easily. Now that might have been his setup, I'm not entirely sure, but I've definitely had 50 people hit any of my Wagtail websites at the exact same time, and it's never been a problem.
Speaker 1: So usually scalability is what I would look at.
Speaker 3: Any more questions from the audience?
Speaker 2: Um Bill mentioned that uh WordPress is good for getting started So like a concept can be migration tool from Excel. Is that like a path you would advise to someone if you start with a quick list of Website that needs that's hold to get to Wagdell.
Speaker 1: Oh, okay. So the question is, uh if someone starts uh a new website, you know, basically should they start with WordPress and then migrate over to Wagdel? And my answer for that is no. If you have a decent timeline, just start with Wagel, right? Because you don't want to spend that extra time reinventing your website basically and doing the same coding twice in two different systems. But if if maybe you needed that website up and running for a client like tomorrow, then yeah, that's probably what I would do is migrate from uh from WordPress to WebTel at some point in the future.
Speaker 3: We have a question from the chat.
Speaker 1: Yep.
Speaker 3: Do you think it would be good for Wagtail to have ready-made themes like WordPress?
Speaker 1: Do I think it would be good for Wagtail to have ready-made themes like WordPress? Uh yeah, uh there's there's a lot of controversy around this one because it doesn't dictate themes at all, right? Every website is unique to some degree. Um do I think it that would be valuable? I think that would be incredibly valuable. Yeah, I think that would be a really uh powerful package for someone to create uh if even if it just comes with like basic e-commerce and and a blog or something uh and they could just like with a drop down choose their color scheme change their fonts out something like that i think would be really powerful
Speaker 3: cool But do you have any more questions in the in person? All right, that's right.
Speaker 5: Yeah, I'm uh curious how much in terms of perception like so do you find the clients understand how much much money involved in investing on a website. Wagtail is not.
Speaker 1: Yeah, so the question is do do clients realize really how much money goes into a website. And that depends on your client, right? Like a university or or a government agency, yeah, they're gonna throw money at it because they know it's a good investment. But like small businesses like like I'll use a restaurant that's just opening, right? They want to keep their their expenses low. So they're probably gonna want to go for something cheaper like WordPress. That you know you can click, click, install a few plugins, install a theme, and away you go But if at any point in the future they're then like, you know, maybe I want to add like a delivery service that we want to like build ourselves, that might be a little bit harder for them. And they probably will hit that point where the site works against them.
Speaker 3: All right, that's it for questions.
Speaker 1: That's it?
Speaker 3: Yeah.
Speaker 1: Cool, cool, cool.
Speaker 3: You've been great.
Speaker 1: Awesome
Organizations may outgrow WordPress when they need advanced functionality, high scalability, or a highly customized brand experience. Its plugins can create security and maintenance problems, and changes or misconfiguration can make the site slow or break it.
Discussed at 4:38WordPress is a good choice when you need a website quickly, want to test a business idea with an MVP, or are building a simple marketing, information, generic, or temporary site.
Discussed at 10:52The speaker says Wagtail scales well as an organization grows and gives the example of a six-site Wagtail installation running on a $5-a-month server. In a follow-up question, he says scalability is something to test carefully with WordPress, since even modest simultaneous traffic may expose setup or performance problems.
Discussed at 13:15Wagtail can be difficult to launch initially, usually requires a developer for major changes and often for design changes, and does not have WordPress-style click-to-install themes and plugins. It is generally designed for teams rather than a single person managing everything.
Discussed at 14:47Wagtail is suited to organizations that need a scalable, secure, highly customized website with strong editorial permissions, moderation, and workflows. It is especially useful when a team has developers and wants the CMS to work with its preferred front-end technologies.
Discussed at 17:53The open-source Wagtail WordPress Import package, built by Torchbox, can help move substantial amounts of data from WordPress to Wagtail and make the migration easier.
Discussed at 20:57The speaker recommends demonstrating scalability with a load-testing tool such as Locust, comparing how the two systems handle simultaneous traffic. He also advises starting directly with Wagtail when the project timeline allows it, rather than paying to build and migrate the site twice.
Discussed at 23:44Not if you have a reasonable timeline: starting with Wagtail avoids rebuilding the same site in two systems. WordPress can make sense first when the site must be online immediately and can be migrated later.
Discussed at 24:20Note: We understand that names change, people change, and bodies change. We respect each individual's journey and privacy. If you have any concerns about a video or need us to remove content, please don't hesitate to contact us. We will handle your request with care and promptly address any issues.
Published July 19, 2024
Published July 19, 2024
Published July 19, 2024
Published July 19, 2024
Published July 19, 2024
Published July 19, 2024