Becoming a WordPress Theme Developer with Andy Wilkerson Part 2

Sponsored by:

Andy and I continue our conversation from last week, about general theme development. We discuss our favorite tools and learning resources, plus much more! If you’re interested in making WordPress themes, these episodes are must-listens!

Show Notes

Joe Casabona: This episode of How I Built It, is brought to you by two great sponsors. The first, is our season-long sponsor. Liquid web has been best known as a managed hosting company with tons of options. It’s also designed a managed WordPress offering that is perfect for mission-critical sites. If you’re looking for improved performance, maximized uptimes, and incredible support, Liquid web is the partner you’ve been looking for. Every liquid web managed WordPress customer has ithemes synced integrated into their managed portal allowing them to update several sites with a single touch. Liquid web hosts all of my critical websites and I couldn’t be happier with them. If you Sign up today, using the discount code ‘howibuiltit33’, you get 33% off for the next six months. Visit buildpodcast.net/liquid to get started. That’s buildpodcast.net/liquid.

It’s also brought to you by Project Panorama. Nod your head with me if you’ve answered yes to these questions. Do client interruptions prevent you from working on billable work? Do you have trouble managing expectations? As a freelancer I certainly had this trouble and I wish I had a tool like Project Panorama that could help. Project Panorama is a WordPress project management and visualization tool that will impress your clients, save you time, and allow you to bill more. Its beautiful interface project, dashboards, collaboration, and communication tools and much more make this an ideal solution. Plus, because it’s built on top of WordPress, you can self host it and have complete control. Head over to buildpodcast.net/pm today to learn more.

All right. This week we are back with part two of my interview with Andy Wilkerson. So last week we touched on who he is and his business. This week we’re going to dig deeper into theme development. So we’re going to talk about our processes, the tools that we like to use, how we learn and how we keep up to date with the ever changing landscape of WordPress team development. It is really one of my favorite episodes probably because I love talking about this stuff. I love teaching beginners things I’ve realized over the last few weeks and this is definitely if you are a beginner theme developer or you want to get into theme development this is an incredibly valuable episode. So sit back, relax and enjoy. Take a lot of notes. And now, on with the show.

So man, that’s, that was, so that was a really great point. You said that you use runway framework or a starter theme that you use. Is there, so I’m sure you’re gonna probably recommend runway because you said you open sourced it. But if you know, if I’m fresh, you know, fresh to the WordPress world and I want to start with a starter theme, is there one that you would recommend?

Andy Wilkerson: You know, I’ve always bounced around for the longest time. My starter theme was whatever theme I did last, you know, I just copied it and I edited from that. And that was mostly because at the time everything I did was an evolution of the previous one. It’s why I created my framework so that I didn’t have to do that anymore. And the way that runway works, one of its like neat little things is that it has extensions which work a lot like WordPress plugins. When you drop them into a folder, they’re instantly recognized, you don’t have to write in the includes and all that stuff. So all of the extensions are modular. And when one has to be updated we can just drop it into the folders of all the other themes that use it and make updates to a lot of our themes at once if somebody finds a bug here or there. So that was actually a large portion of why I created it was I was trying to find ways to reduce my support efforts. And I think it’s different for everybody though runway is definitely not for everyone. I’ve even really been thinking hard about creating what I might call like runway light that just takes that sort of extension model and breaks it out and use it as my starter themes for up themes because I really don’t want the options builder structure or any of that, that we have in runway on the themes that we use on up themes because they’re just so much more minimal. We don’t need all of that and it’s something that I like, the simplicity of just dropping those folders in. But it’s different for everybody so whatever works for you, if you find something and you like it and it works well, then absolutely use it until you find something you like better.

Joe Casabona: Yeah. Yeah, absolutely. So I’m pretty hot and heavy on underscores at the time of this reporting. And it’s just pretty bare bones for me, you know, I’m not like in the theme development business and it does, it makes very few decisions for me which is what I like about it. And now it’s ossified and I’m very familiar with SASS , you know the CSS compiler, not like software as a service. I am very familiar with that structure now. So that’s the one that works for me but again like it, if you’re looking for a good starting point, test around and try a bunch of different things. So I’ll have what we’re talking about in the show notes if you’re interested in any of this.

And I think that, so there’s two more questions I want to ask you revolving around theme development. And you mentioned breaking out the functionality. So, into a plugin, so when I, my first book, ‘Build a WordPress Theme from Scratch or Building WordPress Team With Scratch’ I wrote it for Rock Rabel which was owned by Envato at the time. I talked about creating a custom post type and I said, “So make a folder and the theme and create your custom post type there and then add your taxonomy.” And shortly after that book came out, there was a huge movement that was like you should never tie custom post types to the theme. It should always be a plugin and well this was the printed word and so take a lot to redo that stuff. But now of course you know, you wanna try to keep design and display elements within the theme and everything else essentially as a plugin, so how do you make that decision? Like when you’re looking at your theme, how do you say this is going to be a plugin?

Andy Wilkerson: Well with WordPress it’s actually easy. You just follow the standards that they put on the .org website because they are very explicit about what they will and won’t accept. I’m of two minds about the actual process though. I think sometimes for the simplicity of the customer they just want to be able to upload it and go. They don’t care if it’s done with the standards that have been accepted as the best practices in mind. They don’t want to have to install plugins. They don’t want to have to keep track of them. So I have actually done things where let’s say I have a plugin, I have one that I use right or all the time called the content blocks and it’s just a content type for creating sections of content. It has an editor, it’s normal but you can plug it in anywhere on your website. So it’s great for, you could write your header or your footer in there and then you can assign that and your theme options as your header or your footer. but then on individual pages you could override it with a select box in your meta as a meta box so I could say “On this page, I actually just want a slightly different footers.” So you create a separate version of that footer content block and then you assign it there.

Because of the way some of my themes are structured, they won’t actually work without that custom post type installed and activated because it’s dependency to create some of those content areas of the design. So I will actually include that custom post type in my themes and make it automatically activate. But what I’ll do as a backup to that because people don’t want to sometimes lose their content when they move themes is also included as a plugin that’s can it says it’s required and people are supposed to install it. But if they don’t, my themes are not gonna break. And I actually got a lot of trouble for this with Envato. They told me to stop doing it. They made me strip it out of the aged. They made me strip it out of the theme and I said “But I’m following the rules here, it’s a plugin.” And they did. They said it doesn’t matter. You are not allowed to have custom post types in the theme anywhere. If you’re calling that function, you have to take it out. And so for future themes, I didn’t do that anymore. It was just a plugin but I felt like the approach of, you know, I’m following the best practice of allowing people to leave the theme and keep their content. But I’m also giving them the simplicity of not having to worry about that. It didn’t matter. There are no exceptions to the rules there. So that’s how, you know, you just go and you look at what it says you’re supposed to do and how you’re supposed to do it. Basically though it’s pretty easy to follow those rules if there’s something that creates content in my mind, make sure people can, you know, stop using your theme and keep that content.

Joe Casabona: Yeah. And that’s really the thing, right? You want people to be able to disable your theme and not lose all the content they spent time and effort, and maybe money putting into their website. So that’s a really good point. Though….

Andy Wilkerson: And that’s why I haven’t developed a theme in over three years that had a shortcut in it.

Joe Casabona: Right, yeah. That’s a good point, right? Because if you have a short code, you need that plug in to make the shortcode.

Andy Wilkerson: Yep. And that’s one of the reasons I started using Beaver Builder because they don’t use shortcodes in their builder so it follows the same practice that I’ve tried to put into my themes. And that one thing alone was enough for me to say “Yep, that’s the builder I’m going to use if I need one for something that I’m gonna do myself.”

Joe Casabona: Yeah. That’s you like Beaver Builder is just an absolutely excellent plugin and getting better everyday. I will link my interview with them in the show notes as well because we talked about how they built Beaver Builder.

Andy Wilkerson: Was it with Robbie?

Joe Casabona: It was with Robbie and Justin

Andy Wilkerson: Oh, okay!

Joe Casabona: So it was a lot of fun. So okay. So that’s that absolutely again makes a lot of sense and it’s a really good point to bring out. If somebody was getting started today and they were just like completely unfamiliar with anything that we’re talking about, where would you recommend they go to get started?

Andy Wilkerson: Ah so I actually send people to the wordpress.org site where it has the how to create a theme. Because I know it’s considered to be generic to a lot of people or maybe it’s just been there for so long that a lot of people overlook it. But it really does break down the process and it tells you what you need to do to do it. The other thing to do and everybody should be doing this, I mean if every programmer pretty much does do this, go and find something you like and take it apart.

Joe Casabona: Yeah.

Andy Wilkerson: Figure out, see what they’re doing, how they’re doing it, why they’re doing it, and it’ll teach you a lot about best practices. And I learned so much about things I could do to make my themes better by whenever I’m using a theme that somebody else made. And I’m seeing that they’re doing something really clever or really unique the way they’re implementing something. And it’s like that’s absolutely how everybody should be doing that. And so I take that idea and I integrate it into my own work in the future so that I’m following that same structure or best practice that I identified somebody else using.

Joe Casabona: Yeah, that’s great. That’s actually, that’s one of the reasons I like ‘underscore’ so much is because I, it taught me how to use template parts because I wasn’t really using template parts.

Andy Wilkerson: Oh man, I’ve gone crazy on the template parts inside a template parts, inside a template parts.

Joe Casabona: Me too. And like the biggest thing on my wish list for like core support is being able to pass arguments to template parts. Like that would just be the best. And I know like some major players have their own solutions built. But just like core support of that would make me so happy. So, although based on your expression here, we don’t see the video. Do you have an opinion on that?

Andy Wilkerson: On template parts being more integrated with the custom post types?

Joe Casabona: No, no. Like being able to pass arguments to two template parts?

Andy Wilkerson: I would make things easier. But at the same time like they really don’t like making things more complex, the only way it would ever happen is if they had like an attribute array that they sent.

Joe Casabona: Right, right.

Andy Wilkerson: Kind of like shortcuts.

Joe Casabona: Yeah, yeah. So yeah, that makes sense. Cool, very cool. So we are, I mean we’re probably over time enough that I’m gonna make this two part episode.

Andy Wilkerson: Sorry about that. I have a tendency to talk and go along on things.

Joe Casabona: That’s all right because we got a little deep which is kind of what I was hoping to do here. So the, I guess maybe this is a little bit of a blue sky question. Where do you see WordPress theme development going in the future?

Andy Wilkerson: Well I mean whether we want it to or not or however people like doing their own themes, I see the customizer becoming a much more necessary thing that every theme developers are going to have to make more use of. Not because it’s the best way or the only way to put your theme options or things like that in, but because I see it becoming a more content centric area where you’re going to start being able to do things like edit content or create layouts. Maybe not a drag and drop kind of thing but certainly some type of editing functionality in there. And because people are going to start spending more time in there, you’re going to have to integrate more of your things in there so making meta boxes that are going on your pages for editing posts and stuff like that, you’re gonna have to start integrating them with that functionality if it’s not an automated thing. Or let’s say you have something custom that you’re doing that it’s not a metabox. Necessarily it’s something unique that you’re doing in there you’re gonna have to figure out ways to make those things fit in. So I certainly see that being somewhere that people are going to have to not only embrace but really make a native part of their entire workflow.

I didn’t even myself use the customizer until about this time last year when I acquired up themes because their themes only had options in the customizer. And so because I was working with those themes and modifying them I was in the customizer more often and I started to get much more comfortable with it. I really don’t like being squeezed into that tiny little panel. It doesn’t feel comfortable to me when I am working but I’m used to it now. Although I’ve seen a lot of really creative ways that people have gotten around that where they’ll take over the area, where the actual content is. For example I know an author who has a code editor, this was way before the CSS editing was built into WordPress. But he had the ability for you to do some custom CSS and when you clicked on that in his theme options in the customizer it would actually grey out the content area where it was showing your theme. And it would put a full size code editor with just a little border around it where you could see your design and you could half size it and see what you were editing in the background. So as you’re writing custom CSS you would see it there breaking out of that little panel and using that other area for more space necessary elements. I see a huge future for that. And I’m surprised I have really not seen anybody else doing it. That was a couple of years ago when the customers were still, you know, I don’t know, evolving in a lot of ways. And so the fact that I haven’t seen more of it I find really interesting.

Joe Casabona: Yeah. And that would be, you know, I try to use the customizer in lieu of a theme options page because they’re pushing more people towards it as becoming a more standard, hopefully a more standardized thing. But being squeezed into that little panel is very frustrating. And I understand why because you want to be able to see people that don’t have the giant monitor that I have. I suspect like you probably have. So you wanna be able to see your whole design while also working in the customizer but then working in the customizer can be pretty frustrating.

So that’s a great prediction when at the time of this recording it was just announced today or yesterday like the features of 4.8. And I know there the default widgets are getting a bit of an overhaul. You can finally use like the visual editor in the text widget finally and the image widget now supports like uploading an image right from the image widget instead of having to like go to the media uploader and uploading an image and copying and pasting the URL and then paste in the URL. So what…

Andy Wilkerson: But does it natively support shortcodes or do I still have to write that line and everything I do?

Joe Casabona: Man I don’t, I hope you don’t. So we’re definitely seeing I think it’s gonna be as a slow rollout, right? So by the time this recording is live 4.8 will be out/ So everything I just said you’ll be able to see if you go to your latest version of WordPress assuming it’s updated, always updated WordPress and…

Andy Wilkerson: And develop on the nightly releases just but that plugin in the beta release plugin turn it on the nightly and develop on it. People, please develop on it.

Joe Casabona: Yeah. Absolutely, cool. So we are wrapping up here. I want to ask you my favorite question to ask and then I have a fast five set of questions for you. This is new for Season Three. So at the time of this recording nobody has heard this yet. So first of all do you have any trade secrets for us?

Andy Wilkerson: Well, so one trade secret I would say if I had to like pick something that’s like something I I’ve always recognized but I think not enough even developers do or they don’t realize that they should or shouldn’t do it is, whenever you’re creating a product like this, make sure you have what I like to call a ‘gimmick’ in it. And I say ‘gimmick’ because it can be something that’s totally superficial, has no functionality whatsoever but it’s really neat. And it makes the customer when they’re looking at that demo or when they’re thinking about buying that product go “Oh, wow! That is so cool. I want that.” And so gives them that like, you know, kick to want to go and make the purchase. But it also sets your theme apart in a way it takes your product and makes it have something that nobody else has.

And examples of that I can give are like over the years I’ve done a bunch of different things. But one of the first WordPress themes I ever released had this neat thing where there were these wrap around bars that it was a page template. So you could see the borders, and it had a shadow and then around the edges these little ribbons wrapped around and they would have sort of just a little metadata on there like the date of the blog post or something. And as you scrolled the perspective on them would actually change to look like you were looking down on them at the bottom of the page straight on at the middle of the page and up at the top of the page. And that was like 2010, you know, so that was, you know, totally cool to be able to figure out where people were scrolling and then have some JavaScript dynamically change the images and it was actually images not CSS at the time. But like that, it was so subtle but it was really neat and people would see it and they would think it was so cool and they would want to have that cool thing on their website or in our political theme that we did. A couple of years ago I created a medium pack that was like postcards and premade logo designs, flyers, buttons for printing out on for the person who buys it when they’re doing their political campaign. They have these press ready templates that already use the same styles and graphics that were used to develop that website and then they can just automatically cab those changes out there. Their pictures or put in their name and the logos and then send right to a printer to get made for their campaign. And so we, you know, we make a big deal about saying that we have that on our, you know, our detailed information about the theme and all that and it comes with it for free. So little things like that I call them ‘gimmicks’ because they don’t always have a real purpose, you know, they don’t do anything necessarily but they get people’s attention and they set you apart.

Joe Casabona: That’s awesome. I was, as you were saying that it made me think of I think it was Van Halen who would always put in their rider for concerts that they only wanted a bowl of red M&M’s and later on and even Helen I guess, if I’m remembering this correctly if somebody listening, if I’m messing this up right in and correct me. I’m pretty sure it’s Van Halen though he said that he wanted to make sure that people were reading the whole rider, right? And so that in and of itself was a little gimmick and it hooked people into like wonder why would he do that. And he had his reasons for it and it got more people interested in kind of Van Halen and riders and making sure that people reading the rider were paying attention too. so I don’t know that it just kind of pops in my brain as you were saying that.

So well thank you very much for your time. I wanna end with the fast five questions. And it’s actually fast four and one somewhat thoughtful one. So when you’re ready I will ask the questions and this is the first thing that pops in your mind.

Andy Wilkerson: Oh boy, all right. Okay, I guess, I guess I’m ready.

Joe Casabona: Yeah. I don’t release these questions beforehand so I don’t have time to think about it. What is your favorite book?

Andy Wilkerson: Hitchhiker’s Guide to the Galaxy.

Joe Casabona: Very nice. And follow up question to that, this is not one of the fast five. I’m just curious, I’m looking for new things to read, what’s the last book you read?

Andy Wilkerson: I wanna say, ‘Will this fly?’ by Pat Flynn. But that’s not right. I read that in December, I can’t remember [inaudible 20:27.8] huh

Joe Casabona: Well, you did, you had a child in that time frame as well I think, right?

Andy Wilkerson: Ah yeah. In January I had a baby so our third child and I, that’s the book I read right before the craziness started all over again. So yes, I always described that time right after a baby is born as the ‘blur’ because you went through it and you know what happened but you cannot remember details.

Joe Casabona: Yeah and as the father of a nine week old at the time of this recording, I definitely know exactly what you’re talking about. And I don’t really feel like I’m out of the blur yet.

Andy Wilkerson: You’re not actually but you are lucky because if you’re past the eight week point, you’re at the it’s no longer a one side of relationship, you know, so she’s smiling at you now and there’s a little bit of give coming back in that relationship. The first eight weeks are absolutely the hardest.

Joe Casabona: Yeah. you’re just kind of looking at them and they’re crying and you’re wondering why but it is when she smiled at me for the first time like my like legitimately smiled and not like I just pooped smile and like my heart melted. It was awesome.

Andy Wilkerson: So my wife calls it their defense mechanism.

Joe Casabona: Nice, nice. Second question: What kind of music do you listen to?

Andy Wilkerson: I’m not a music person. You know if you go back to when I listened to it the most, back in high school I was listening to like classic rock at the time. I don’t even want to describe what classic rock is now because it’s like the stuff I was listening that was actually being played when I was in high school. But it was like Led Zeppelin things like that. I’ve always been a big fan of things like that.

Joe Casabona: Nice, that’s very nice. What is your favorite food?

Andy Wilkerson: Lasagna, like Garfield.

Joe Casabona: Nice, very nice. I like that a lot. I just heard an interesting fan theory about Garfields, I don’t know if you listen to this stuff you should know. But they talked about how…

Andy Wilkerson: No. I wouldn’t know.

Joe Casabona: They talk about like crazy, like this episode they talked about like crazy fan conspiracy theories and one was that Jim Davis in 1989 had like this really sad, like a series on Garfield where like he was essentially just like alone in this place like dying. And like yet like a fever dream that Jon and Odie were there but like it turns out they weren’t. And it was just like did not go over well like it was like super serious and weird but now there’s a fan theory that that’s actually the reality and every other Garfields trip is Garfield solution is like hallucinating. That was a bit of a tangent. I also love lasagna

Andy Wilkerson: So it’s like the original Dallas. It was all just a autistic kid’s dream, right?

Joe Casabona: Yeah. Yeah, exactly. They talk about that too. It’s a really good episode. I’ll link to them in the show notes. Who’s your favorite sports team?

Andy Wilkerson: The Auburn Tigers. I am a college football fan.

Joe Casabona: Nice, the Auburn Tigers. And the one that might require a little bit of thought. I want you to pick something that you know really well. It doesn’t have to be WordPress or it can be or whatever but something you know really well and tell us how you learned that?

Andy Wilkerson: That is interesting. What am I good at? I’m good at the things I turn into my jobs so let’s see something that so something that’s not part of my job?

Joe Casabona: It can be part of your job. It could be anything now, like if you know, if you have like a woodworking hobby, how did you learn woodworking? But if you want to talk about, you know, theme development how did you get really good at that?

Andy Wilkerson: Yeah. Actually that’s a good one. So I know I know basically how to program and code and do all these things and tournament a little business really well because when I was in high school that’s what I would do. I I had a lot of trouble sleeping. I’m a little better at that now because I have so many kids. But I would get up in the middle of the night because I couldn’t sleep and I would go downstairs. I would get on the computer and I would write these little HTML and JavaScript things and there’s very little CSS back then. And I would create these little websites that were like the stuff that you would get in those chain emails that would tell you, you had to forward it to so many other people and I do like the little JavaScript wishing well thing where every time you sent it to somebody else you got a wish or whatever. And you know, I was like 15 or 16 and I was making these things and I did it all the way through high school. And so that’s how I basically figured out how to do that stuff because I wanted to do it. And so I taught myself those things then. And then I didn’t do it for a long time. In high…in college I didn’t do any website stuff at all. I completely took a break from it but that’s how I know, that’s how I know that really well.

Joe Casabona: Nice. Very nice. So I think every answer to that question has been learned by doing which it sounds like is what you did as well.

Andy Wilkerson: Yeah. Gotta do that.

Joe Casabona: Yeah. Absolutely, awesome. Well Andy, thank you so much for joining me today. It was a great conversation. It’s gonna be two parts so I’m wrapping up Part 2 of building themes and how Andy built themes. So again thank you so much for joining me. I really appreciate it.

Andy Wilkerson: Thank you! It was excellent being on. I’m sorry I was so long with my answers it’s just the way I am. I’ve been working on it. You know what I need to do is start a podcast so I can become a better listener cause that’s what your job is, right? You listen and then you ask the question and then you listen some more so maybe I’ll do that once Podpub launches. You can have me back on and I can talk about that but I’ll be having you on my show, maybe.

Joe Casabona: That sounds good. And I’ve gotta say it, if you’re talking a lot it makes my job a lot easier. So I really appreciate it. I will keep an eye out for Podpub as well.

Andy Wilkerson: Alright. Well, then you’re welcome. I made it look like I made somebody’s job easier today. Success!

Joe Casabona: Hopefully Andy made a lot of people’s jobs easier today. Anybody wants to learn WordPress themes, again I really enjoyed this episode today. So Andy, thank you so much for your time. I really appreciate it.

Thank you to our sponsors Liquidweb and Project Panorama. Definitely check those guys out, they’ve been big supporters of the show and I really appreciate it .

And before I get onto asking you to rate and review this show, I’d be remiss if I didn’t mention that we celebrated our anniversary a couple weeks ago. And it’s been a fantastic year or so of the podcast has grown in a way that I did not think was possible at least in the first year.

And it’s thanks so much to everybody who supported the show. Everybody used to come on the show, everybody who has that, been a sponsor of the show. And of course you, the listeners. So here’s to a better year two. I’m really enjoying Season Three so far and more scheduled out now until December.

So once again thank you so much for being a loyal listener to a show that I just had to start because I wanted to. I’ve learned so much. I hope you learned so much too. Thanks so much again.

And if you do really like the show and you want to see it continue to grow in year 2, the best thing to do is rate us on iTunes. iTunes is perhaps the best way for people to discover podcasts. There are lots of other ones out there like Google podcasts or Google Play podcasts, Skip and Shannon, TuneIn, Stitcher all these other ones and things like that. But iTunes is still the de facto source for podcasting. So a rating and a review goes a long way. So let us know if you give us a rating and review and we will gladly, “we” I say “we” it’s me, gladly I will mention you on the air.

So once again thanks so much for a great episode, a great year. Here’s to year two.

And until next time, get out there and build something.

Leave a Reply

Your email address will not be published. Required fields are marked *