Welcome to Press This, the WordPress community podcast from WMR. Each episode features guests from around the community and discussions of the largest issues facing WordPress developers. The following is a transcription of the original recording.

Powered by RedCircle

Doc Pop: You’re listening to Press This, a WordPress Community Podcast on WMR. Each week we spotlight members of the WordPress community. I’m your host, Doc Pop. I support the WordPress community through my role at WP Engine, and my contributions over on TorqueMag.Io where I get to do podcasts and draw cartoons and tutorial videos. Check that out.

Doc Pop: Advanced Custom Fields is a popular plugin designed to enable WordPress developers to have more control over their custom field data. And it’s also a two time Plugin Madness winner. Recently Advanced Custom Fields released version 6.1. With this version, site developers can now register custom post types and custom taxonomies from within the plugin.

To talk about these new features in ACF 6.1, we’re joined by Iain Poulson. A product manager at WP Engine working on Advanced Custom Fields. Iain, you’ve been on the show. It was about a year ago that we had you on maybe a little less when you released 6.0. So I know we’ve already gotten to this, but can you just remind our listeners, how did you first get into WordPress?

Iain Poulson: Oh yeah. I started building plugins a long time ago, and then eventually moved from freelancing, building WordPress sites for clients to working for Delicious Brains, a WordPress plugin development company. And along the way we acquired ACF and I became the product manager for ACF. 

And then just under a year ago or a little bit less than a year, Delicious Brains and the plugins were acquired by WP Engine. And so here I am now as ACF product manager within WP Engine. The ACF product is going from strength to strength, which is great.

Doc Pop: Do you remember what version ACF was when you became product manager?

Iain Poulson: Oh I thought you were gonna ask when I first started using it, but it was 5.10 or something like that. We were working on what was next. We were trying to get our feet under the table with just the product and building new features. As the new team working on it, I think 5.12 was our bigger release, which was the REST API integration.

It seems like a long time ago.

Doc Pop: Yeah. And so like I said, we had you on in October talking about 6.0, and 6.1 is out and it’s a huge release. It seems to be one of the most exciting Advanced Custom Fields releases I can remember. Can you tell us what are maybe the one or two biggest features of note in 6.1?

Iain Poulson: You’re totally right, it’s a really big release. It’s a big release for a number of reasons. It brings the ability for people to register custom post types and taxonomies in WordPress in the ACF admin, which is kind of like a huge thing that people do all the time.

People do it with other plugins, they do it with code. And ACF users have always been doing it. It’s one of these things that you typically do when you’re building a site that just has some other data other than posts and pages, which is pretty much all the time. People need custom post types to build their sites.

But it’s always something that ACF hasn’t done, and it’s worked with whatever solution, and it’s been predominantly around adding fields to those post types or taxonomies. 

But it became so clear that the workflow around building a site, creating a custom post type and then adding fields to that post type was so sort of entrenched in how our ACF users were building sites that it just seemed like a great idea to put it into the plugin. 

But it’s the first time the plugin’s kind of moved into doing more than just custom fields. I talk about it in the release post jokingly to say it’s now we’re probably referring to it as ACF now, rather than Advanced Custom Fields, because it does more and talking about the plugin as Advanced Custom Fields, Post Types and Taxonomies is a bit too much of a mouthful.

So yeah, it’s a change in the approach of like, we’re trying to improve the workflow around custom fields, around custom data, around content modeling, around building WordPress sites, structured data with WordPress sites, and making it better for our users. So it was a big shift there, but it’s also a big chunky release.

There was a ton of work that went behind the scenes under the hood. Refactoring how the admin of the plugin worked. Moving just from the registering UI of custom fields to now to incorporate custom post types and taxonomies and making that whole UI and all of the engineering work that goes on. Making that reusable so we can then move onto other things later on, which we’ll probably talk about in the show. 

So yeah, it’s a big chunky release. It’s been well received. I think that there’s a ton of people out there that have just gone, “Yes, I’ve been waiting for that for a while.” 

And it just makes my workflow much easier. I can use one less plugin, for example, or even if I’m still registering post types with code because I wanna put it in version control or having it on the file system, I can use the ACF registration UI to go and have complete control over the post types that I’m registering.

We expose all of the different settings, but make it quite simple so you can get away with the quickest amount of settings, tweaking to register a post type, or you can really delve into all of the advanced settings. And you can then take that definition and export it to PHP, and put it in Git or version control, or you can use our JSON export and sync that we have for field groups so you can make changes and push them up to your production site.

So it kind of fits in the same workflow as field groups, but just in the ACF way with post types and taxonomies. So it’s really cool.

Doc Pop: And this is available for free? These two main features that we’re talking about are available for pro and free users?

Iain Poulson: Yes, exactly. This is not a pro only feature. This is for everybody. This is kind of like the bedrock of creating data heavy sites with WordPress. We wanted to make it available for free. It’s great to have out there for sure.

Doc Pop: Mm-hmm. According to your blog post about this release, you said, and this is gonna be quoting from your blog, “Registering CPTs and taxonomies has been on a roadmap for quite some time. When Delicious Brains acquired the plugin from Elliot, the first email we sent our users was to ask them the top three things they wanted to see in the plugin, CPTs, and taxonomies in the plugin was right up there and the top five requests.”

So I’m kind of curious, we talked about things like your history with the plugin, why if these were the most popular things, why did it take such a long time to be able to finally integrate them?

Iain Poulson: Yeah, I mean, I think obviously there’s a sort of a longer history of ownership with Elliot having it for so long, he was the founder, he was the creator, he was the person that did so much heavy lifting and hard work with it. I think he potentially had a different view on what it should do. And that opinion was different to perhaps how we viewed it. 

And we now view it differently even at WP Engine compared to Delicious Brains. So I think these things are subjective, right?

You can have some of our users say, well, I don’t want ACF to do that because I use another plugin to do that. Or I’ll use my tried and tested method with code. And they don’t see the need. And then there’s five other users that would just be like, yes, this is exactly what I need.

We’ve taken that approach with it. There’s also a piece with headless. WP Engine’s Atlas platform is built on modeling data in WordPress, creating custom post types. Creating custom fields, and exposing those all through WP Graph QL requests, and, um, making that data available on the headless front end.

So ACF is working within that platform to give users the ability to model data in the UI quickly, easily without mucking around with PHP code or other plugins. It’s playing into the fact that ACF and WordPress can create great editing experiences, great content editing experiences, and create good headless experiences as well for WordPress builds.

Doc Pop: That’s a great spot for us to take a quick break. When we come back, we are gonna continue talking with Iain Poulson about what is coming in future versions of ACF, as well as talk about a few more features that we haven’t gotten around to yet, and this release of 6.1. So stay tuned for more Press This.

Doc Pop: Welcome back to Press This, a WordPress Community podcast on WMR. My name is Doc and I am joined by Iain Polson, a product manager at WP Engine working on ACF, which just released ACF 6.1. Before the break, we talked about some of the powerful new features that have been released with ACF 6.1, including registering custom post types and taxonomies.

Iain, I think you were just about to kind of touch on something here that I was curious about. These are new features and powerful new features with a lot of options and a lot of complexity. And you’ve even mentioned that it’s sort of changed the way the whole product is being thought of.

And, Advanced Custom Fields, in a way, is almost too limiting. And allowing yourself to think of it as ACF, you can explore more of these possibilities that are out there and not being limited to just certain ideas from the past. But the thing I’m wondering is when you’re adding so much power to a plugin like this, how is that changing the experience for new users?

Is this maybe accidentally making the plugin kind of harder to use for more basic users?

Iain Poulson: Yeah, that’s a good point. I think since the 6.0 release, which had the new UI, we’ve been trying to think more purposefully about how we onboard users and have a better experience when you install the plugin and you activate it and you have an empty state with things. You don’t have any field groups, you don’t have any post types, and you don’t necessarily know what you need to do. 

There’s more work to be done there for sure, but something we did put into 6.1, which I’m really pleased how it turned out and I think it’s, it’s already proven valuable for people.

It’s a better way to select and choose the field type that you need. So when you are defining your fields and you’ve created a field group and you are defining the fields that you need, you need to choose what type of field is it? Is it text field? Is this gonna be a WYSIWYG Editor?

Is it gonna be a page link? Is it gonna be more of a complex field type? Is it a repeater field, a flexible content field, a clone field? But actually what are they, what do they do? 

And previously in versions before 6.1, the field type selection workflow would be you go and use a dropdown, a very basic HTML dropdown and select your field type.

And you would have to know which one you’re looking for, know which one you want and what it does, and try and glean all that information from a select field. So now we’ve kind of added this Browse Fields button next to the select, which we’ve improved a little bit with Better Search as well and just better visibility about what you are picking.

But this Browse Fields button brings up a modal, which is a field picker. It shows you all of the fields, and it’s categorized them, so you can sort of tab through the different categories of either a basic field, a choice field, the relational fields and things like that, like the layout fields.

It’s trying to help new users, but existing users as well to understand what are these fields. What are the 30 field types that they’ve got at their disposal and why they’d use them. So we’ve got kind of a sidebar of the modal that has a description about each field. There’s almost like a visual representation of what the field would look like the edit screen.

I mean, it’s a bit of a pseudo UI element. It doesn’t show data, but it just gives that example of what it actually will look like. And there’s documentation links and there’s also tutorial links where we have them for field types and you can kind of like click in and get some more information.

So hopefully it’s making the experience of defining fields easier for people who don’t perhaps know what they’re looking for. But there’s 30 different field types. Some are named in such a way that it’s quite hard to understand when and why you’d use them. And there’s some fields that are extremely powerful, extremely useful to people. But they’re not very accessible. 

Like the clone field, for example, is very hard to understand when you first look at that as a name. What that really does and the flexible content field is very similar. So we are trying to call out and make it easy to understand what these things are and have more information around it.

There’s some really good tutorials that the team are putting together and we’ve got folks from the content team, the Dev Rel team working on tutorials around the clone field and we’ve got them for the flexible content field, which are really powerful fields that people who are building sites rely on. Some of them are pretty much turning into page builders with the flexible content field, creating layouts for clients. But it’s so hard to understand if you are a first time user. 

So yeah, this is about discoverability trying to understand the best time to use it.

And it calls out the great fields that we’ve got. So yeah, I’m really proud of that piece of work. It looks great and it works. It works really well, and it’s having the desired effect.

Doc Pop: I think about Gutenberg and its many stages kind of being released and finally in WordPress. 6.2, I think we’ve gotten the most full and kind of final version of the site editor. Do you think that these changes are gonna be seeing a lot of drastic changes or do you kind of feel like y’all waited to roll them out in a way that this is probably gonna look the same in version 6.3 and 6.4 of ACF.

Iain Poulson: Yeah, I think for the most part, especially the field picker probably won’t change too much. I think we definitely try to take an iterative approach on some things where you need to get to a point where you ship some stuff and you will come back to it and improve it. 

And a really good example of that is that in the custom post type registration piece, when you are registering a post type, you need to give it a menu icon if it’s gonna be a in the left hand side, in the admin menu.

And other plugins and other ways of doing that give you perhaps a better experience than we’ve got right now. You can supply a URL to an image. You can supply a dash icon class that will use the same type of icon, from the Icon library that is in the left hand side of the menu. 

But, that’s not a great experience. So we are working on improving that and that nicely ties into actually what’s coming down in a future version that we’re working on at the moment is, taking this idea of, you can register things in code, like a custom post type but actually making it easier to do that in the UI.

A prime example of something that we’ve had in ACF for a long time is, the options page feature part of ACF Pro. So it’s a premium feature, but it gives people the ability to create fields and stick them in a page in the admin that is a global, it’s like a site settings page or an options page. So it’s not part of a post type or anything like that. 

And it stands alone. And you put global settings in there of fields that would be used across the website. And at the moment, ACF Pro allows you to create these options pages, but you have to register them in code first, and then you define your fields and say, I want these fields to show up on this options page.

So we are working on a UI for this options page registration to make things just so much easier. And a lot of the work that went on with the custom post type piece, the refactoring that the team did behind the scenes kind of paves the way for us to build out more UIs. To help register other things, and the options page is gonna be the first thing.

But the reason why I’ve brought that up is that, again, with the options page, when you say, right, well, I want this page on the left hand side, and if it’s a top level menu item, you also wanna pick a menu icon to sit similar to all the other menu items that are on the left hand side. 

And so the designer Dale, he’s been working on a much better picker experience that will be used for the options page, and we’re gonna port it back onto the custom post type stuff as well.

So we’re slowly improving things that aren’t perhaps as polished to start with, but I think, you don’t wanna get into that trap with software development where you only ship when it’s perfect because perfect is a moving state and you never get there. So you have to get it out and keep moving forward.

So that’s what’s coming soon in 6.2, we hope. And we’ll improve the options, the menu icon picker in the custom post types as we do it.

Doc Pop: That’s interesting. And I know you’re predicting when things come out, so we won’t talk about timelines. This is just a random question that’s been on my mind, we mentioned you took on ACF at version 5.10 or 5.11 and 5.12 was a major release.

I’m just kind of curious, Iain, can you tell me real quickly, when do you know it’s time to go bump up to the next number? What made 6.0 a new big number release?

Iain Poulson: Yeah, I think it’s normally either a big feature, that’s a big project in itself, like the custom post type taxonomy. That’s a big item that really deems worthy of a big release. 

There’s some cases where like 6.2 is probably not gonna be as grand in the sense that it won’t have this major feature, but it will have two or three things that altogether are pretty large and are gonna be kind of important and improve the quality of life of the developers that altogether make up quite a good sum to warrant a major release. 

And then things like 6.0 with the new UI is a big change, so it felt like that was the right time to make that jump from 5 to 6. But yeah, I think we kind of follow the WordPress versioning system a little bit.

So 6.1 is no less important than 6.0, even though 6.0 is greater than a 5 kind of thing. We are not doing semantic versioning for releases. So we will go to 6.2 and that will be our next major release. And hopefully we can deliver enough value in that release that people just can look at it and go, yes, that’s a big one.

Rather than going, is that it? It’s hard. It is a bit of a juggle between, keeping a good cadence of releases because we want to keep delivering value on a good timeline to the users, but we also wanna get the right things, at the right point to make it worthy of that release.

Doc Pop: I appreciate you answering that Iain and that’s a great spot for our final break. When we come back, we’re gonna continue talking with Iain Poulson about Advanced, Custom Fields and their huge victory that they had in March. We’ll tell you more about that after the break. 

Doc Pop: Welcome back to Press This, a WordPress community podcast. I’m your host, Doc Pop, and I am talking to Iain Poulson, a product manager at WP Engine, working on ACF. And before this break, I teased about a major victory, and of course, I am talking about Plugin Madness 2023, which is the annual bracket style competition that we run on Torque Magazine.

We started this competition in 2016 using user submissions for their favorite plugins. We weeded it down to 64 plugins so that we could have a nice even bracket, split ’em up into different categories at first, but they eventually weed down to just two finalists. 

And Advanced Custom Fields, back when, when Elliot was running it they were our very first winner of Plugin Madness. So they’ve always had a special place in our heart. And this year, 2023’s Plugin Madness champion was again, Advanced Custom Fields, or ACF. 

So Iain, huge shout out to you and your team. I just quickly was wondering, do you have any advice for competitors in 2024 Plugin Madness on how to get their fan base to vote for them in Plugin Madness competitions?

Iain Poulson: Yeah. I dunno. I think we didn’t really want to sort of mention it too much. We did speak about it a few times and mentioned it when we had some office hours and stuff, and we tweeted it a couple of times. I think you can take it maybe too seriously from a marketing point of view, but I think it’s great to see the the recognition that ACF has got again this year.

And it definitely means a lot this year to myself and the team, because it does feel like a nice piece of recognition. The product itself is still there in people’s minds as a valuable part of the community. It’s a valuable tool in people’s tool belts.

And obviously the things that we are doing and the releases that we’ve done recently are ticking boxes for people and it’s a nice testament to the team’s hard work and dedication. I’ve said that on the Torque Mag quote. It’s great and we love ACF.

It’s not just the product that we work on and release and try to improve we’re ACF fans ourselves and we certainly don’t think of ourselves as the team or WP Engine as owners. It’s stewards of the plugin because it’s such a big pillar of WordPress. And the ecosystem and as a developer tool.

It’s just great to see that recognition and people loving ACF because we do too.

Doc Pop: At Torque, we appreciate all the folks who voted and nominated their favorite plugins. I’m gonna give a shout out as well, we had ACF at first place, WooCommerce was second place for this year’s Plugin Madness competition and Managed WP Worker. These were all plugins that were user nominated and they are free in the WordPress repository.

So check those out. Check out that little buy, WooCommerce [laughs] you might not have heard of before. But yeah, lots of great results this year and we look forward to doing this again next year. 

And speaking of next year, Iain, it’s been great having you on the show. I hope it’s not another year before we have you on the show again.

It’s really fun hearing about ACF from your perspective, cuz you’ve been a fan for such a long time. If people want to follow what you’re working on, what’s a good place for people to be able to stay in touch, and see what’s what you’re working on right now?

Iain Poulson: We are pretty active on the ACF Twitter account. I’m also quite active on my Twitter, which is PoleVaultWeb. We are trying to be more out there with people, talking to the community, chatting to ACF users, and we’re doing these biweekly office hours at the moment which is, I think we’ve done about five now which is going really well. So basically, on a Friday afternoon, or depending on your time zone, we’d spend about 45 minutes with the team. So myself and two or three of the developers and some of the Dev Rel folks are on a Zoom and people can just turn up. If you’re using ACF, if you’re developing with ACF, if you want to know about a feature that might be coming or you want to talk about how to build X with ACF or you’ve got a problem.Come along, it’s our ACF Chat Fridays that we’ve been doing and we’ve had some good feedback and it’s just nice to chat to other ACF users.

Doc Pop: Thanks for listening to Press This, a WordPress community podcast on WMR. Once again, my name’s Doc and you can follow my adventures with Torque magazine over on Twitter @thetorquemag or you can go to torquemag.io where we contribute tutorials and videos and interviews like this every day. So check out torquemag.io or follow us on Twitter. You can subscribe to Press This on Red Circle, iTunes, Spotify, or you can download it directly at wmr.fm each week. I’m your host Doctor Popular I support the WordPress community through my role at WP Engine. And I love to spotlight members of the community each and every week on Press This.