Web Process Consulting | Recurring
Gavin Taylor: Sa. Good. Can you hear me okay?
Chris LaFay: Yes, I can. Loud and clear.
Gavin Taylor: My mic's been all messed up recently. Sorry about that. I've been in the trenches this week already, so.
Chris LaFay: I. I feel that I may or may not have been up till 1am last night. Maybe, maybe not. Maybe, maybe not.
Gavin Taylor: I don't know. We don't know.
Chris LaFay: We don't know. So.
Gavin Taylor: Unfortunately that's a common occurrence for me. I. I do my best work between like 8pm when I put the kids down to like 1 or 2am I hate it.
Chris LaFay: I absolutely hate it about myself. I'm. I'm very similar, but I also, I reach a point of no return. Meaning if I actually go back and look at the things that I accomplished between 10pm and 2am, it's not. I. There's a lot of distraction in there. It's just like I checked my email for way too long. It's like, why am I checking my email 15 times in 30 minutes? Oh, because there's a tab open and it's just like habit. Just like, check email, check email, check email.
Gavin Taylor: See, I'm the opposite. That's what I'm like hyper focused and I just bust through like a whole list of things to do. I'm not a morning person at all and it drives me nuts.
Chris LaFay: I'm trying so hard at my. One of. I. I have an advisor and one of the things that we've been working on this year is getting me more focused. And so I have a. I have a new tool that I'm really trying to like stick to called Motion that literally puts all my tasks inside of my calendar. I'm sure you've seen it advertised to you before. They do a lot of ads and so far that's been helpful to where I just go back to it and it's like, this is the next thing you need to work on. It's already like prioritized everything to make sure that it gets done in the right AM of time and it puts it into your calendar. I'm like, I need to give this a good college try. Y and so.
Gavin Taylor: We're about to implement a AI thing. I forgot which one it was. But Craig and Natalie are testing it out. And it's funny because they're notoriously late for meetings, but it will kick you out of whatever you're doing and put you right into your meetings. If you like, go on to YouTube or whatever, it's like, are you distracted? And like pushes you back to what you were supposed to be doing and keep track of what you did throughout the day. I'm like, I don't know how to feel about that. Yeah, send you the link for it.
Chris LaFay: But I'm sure I'm very curious about it. I like the idea at a personal level. I don't know if I like it from. At the, at like the company level of being like you are to stay on task and in balik, like it feels very.
Gavin Taylor: Let's try to do it for time tracking. That's one of the things we're going to try implement for time tracking is we're using ClickUp now. But like me, me and Craig, there's no chance. We sit there like, oh, we spent 10 minutes, half an hour, hour on this one. Thing is we're just jumping right. Like would not, you know, I, I.
Chris LaFay: Wholeheartedly know my team has been wanting me to time track for a long, long time. I'm starting to do it now and actually I feel, it actually makes me feel better doing it. I feel like I have a record of what I'm actually doing. And it's interesting because I work eight, nine, ten hour days. But yet when I go back and think about it, I only can think about like logging five hours and I'm like, where, where did the other five go? Like what, what happened to them? What did I do? I have no freaking clue.
Gavin Taylor: So it's called Rise, by the way. I think this is a R I Z E. Oh, oh, Rise.
Chris LaFay: Oh, I've heard of Rise. I've actually heard really good things about Rise. I didn't know that it like physically closed out of your applications though and, and moved you that.
Gavin Taylor: Yeah. Which is, which is funny. It's like, nope, you're in this meeting now. Interesting.
Chris LaFay: One of my. So my advisor actually uses both motion for time track, not for time tracking but task management.
Gavin Taylor: And.
Chris LaFay: He uses Rise to keep track of whatever the heck he is doing because he just is a consultant. He doesn't have the, you know, big agency, big company, the whole nine yards. And so.
Gavin Taylor: It was so much easier to track.
Chris LaFay: Fun time with Rise.
Gavin Taylor: No, just like being a consultant I used to do. Yeah, it was so much easier to track my time. But yeah, this is what we did today. This is all this stuff. Now I get stuck in a rabbit hole and lose half my day.
Chris LaFay: It's such a weird, it's such a weird thing. Like there's some things that are. Like there's some things that I'm. I wish I could automagically track my time and not have to think about it and then not have to go back and re. Like input stuff. But I also don't want to pay 20amonth again for something else and like have like these 20amonth little things. But I also know that it's important to know where you're spending your time. Like am I spending it doing sales anyway?
Gavin Taylor: Anyway, is it gonna save 20 minutes to pay for itself each month? Probably, probably.
Chris LaFay: But then you have to remember to use it like you actually. But then are you getting valuable information that you're actually using from it? That's it's all these things. Say, spend 20 bucks, will you save 20 minutes? Of course you will not, of course. But there's a high likelihood of that.
Gavin Taylor: It's one of those easy wins. It's like, okay, now I just fight. I'm gonna spend 20 minutes here, 20 bucks here, 20 bucks easy, low ticket thing.
Chris LaFay: Huh? So on this topic, I talked to my SEO people. I sent it out to two folks that I know, the robots txt file. What you have is a great starting point. So just run with that, you're good to go. One of my primary SEO people responded back and said that that's all well and good, so.
Gavin Taylor: Okay, cool.
Chris LaFay: She actually responded while I was out of town last week. So I apologize for not telling you until literally just this moment.
Gavin Taylor: You told me you were going to be out. I didn't expect a response from you, but that's perfect. I bust my ass last week and as you can see, this is really filled out. So now we are here in the website design and documentation development side of things. So this is what I want to talk to you about this week. There's two of them. The QA thing, I'm gonna push off till next week because I want to create a foundation for us to go through next week and do that together. But the website design we have. I really wish you met Chuck because it's gonna make a lot more sense. He was our old senior developer. I like to explain it as he's like an engineer. He knows everything about everything with coding, but anything outside of that framework. He's socially inept. He.
Chris LaFay: So basically like most developers.
Gavin Taylor: Exactly. But he takes a confrontational point of view and he can't communicate certain things. So I went in one of the things, he had an old sop. It was something stupid easy. I forgot what it was. It's in here somewhere. But he had this like 10 minute walk through and it's like five page document trying to explain a 30 second thing. It's recapture that's what it was. It was a recaptcha thing. How to add the URL to recaptcha and put the API on it. I'm like no, we're not doing that. So I made a quick one pager. Anyway, the reason I say that is we have a document for do's and don'ts on web develop. Basically summarize it says, hey, we're not going to default to plugins. Here's our list of plugins. Here's what you don't do. We need to lean more on custom coding than we do anything else. So I need to work on coupons today because we were looking yesterday and I need to add something in it as it's still fresh on my mind. Basically getting it connected with a shop management system that a lot of our clients utilize. But other than that for the website design and development process. This is where I need to start making the SOPs and this is where I kind of lose my knowledge on the dev side of things and might need your help on it. So here's the vision on this. Obviously we have a template built whether it's optimized or not, what have you. We are going to provide the dev team the fulfillment launch packet and then we're going to need a couple of things, a couple sops around web design and development, one of which is going to be documentation on our coupon plugin which I had our devs actually come up with. I'm not even going to play with it. It's good enough as is. It's going to be the, the SOP on how to manage those coupons and who gets sent those coupons and so on so forth. Now outside of that, what I want to do is have more or less a checklist within ClickUp and within the SOP itself. This is kind of the basic checklist we could go more in depth about. It is okay, are all the pages built, title tags about descriptions added, navigation working and designed to out specifications, branding. It's essentially a QA checklist if you will, pictures, all that good stuff. So I don't know what I don't know and I don't know how to sop this since I'm not a developer.
Chris LaFay: So are you wanting to. Hold on, give me, give me a second to think.
Gavin Taylor: Yep.
Chris LaFay: So what I believe your, your kind of root question is has somebody gone through, once the site is done, has somebody gone through every page and make sure that I'm gonna generically say the stuff is there?
Gavin Taylor: Yes. The reason being is We've had several launches where there's been dumb mistakes. Well, I feel like a developer. There's again not being a developer. Might be that outside of the box type of thing. But if I tell a developer, hey, this is the phone number for example. But in the code on the back end we have phone numbers are a great example actually. I don't know why Craig has this thing. But for the example phone numbers or the place fillers, he wants that area code to be on those place fillers.
Chris LaFay: Well, he wants the area wait on the phone number. Greg wants the phone the area code on only in some places.
Gavin Taylor: No, no, hold on. And this is going to be the best one to try. Okay, so the phone number, obviously all the important phone numbers, like the display phone number needs to be same throughout the site. Whether it's going to be in the content of the site, the button of the site, what have you. But then on the forms themselves. This is a bad form. How do I explain this?
Chris LaFay: Okay, I mean there's some places where the phone number is just in the body content versus something that's templated. Like the, like the header and navigation bar should automatic like going back to what we've talked about in the past of like putting stuff in advanced custom fields and letting it dynamically pull. But yeah, that's hard to do inside of like the body section of a website.
Gavin Taylor: Yeah, basically just making sure that all the phone numbers across the website.
Chris LaFay: Are.
Gavin Taylor: Actually changed where we've missed that before and then logos will sporadically throughout the website not be changed either. The biggest and this is something I've already addressed, but the biggest one is the coupon that we email out. There's the logo inside of that coupon and a lot of the times that logo doesn't get changed on the first time around. So when we go back through and QA it we make sure that that's done. But essentially what I'm looking for in this, let's try to simplify this as much as possible. So I'm gonna have a checklist for them when they build a website. I'm gonna make sure that hey, all the pages have been created per the URL structure and website layout. All the title tags as well. Navigation is working and shown as on the launch packet. I guess my question to you is what are some things I might be missing in a. If you were to take just a standard website and duplicate it to for a different client. What are some things that I might be missing in this list that you would need them to Do I feel like this is everything? And what I'm going to do is I'm going to link the SOPs I made up here. So that way they actually have it like for example, robot stats. Here's the actual SOP for site map. Here's the actual SOP for that way it just standardized across the board. I just want to know on your perspective if there's anything like big that I am missing here.
Chris LaFay: So.
Gavin Taylor: Because this is essentially going to be our QA checklist is what it boils down to, this is what my marketing assistant will go back and make sure that they've done and they're going to run a screaming frog report, pull all the data across the site, make sure there's no third party phone numbers, make sure there's no link issues, make sure there's nothing like that. And this isn't me putting you on the spot like, hey, I needed something.
Chris LaFay: No, no, no, no, you're fine. The thing is this can get very, very detailed very, very quickly because you have a ton of pages at the end of the day. So. And I think where my brain is not clogged up, but thinking like company info for number five. That's name, phone number, address, hours of operations, etc. And obviously like hours of operation really is only in the, the header and the, the nav bar, which I get. But things like phone number, somebody might type that in into like a block inside of the website.
Gavin Taylor: So.
Chris LaFay: I what I knowing that as a developer myself, going from 0 to 80 is easy. The 80 to 100 is the, the challenging piece. And that's not true for everybody, don't get me wrong.
Gavin Taylor: Exactly. True for us is that. So it takes up most of the time.
Chris LaFay: Exactly.
Gavin Taylor: So I want to have the handoff so that launch packet that I'm still making along with this checklist. That way we can, instead of 0 to 80, it could be 0 to 95. And after a dozen websites it'll be 0 to 99. And now we have, oh hey, we forgot this and missed this. So whatever the case may be,.
Chris LaFay: I because my in there's two ways that I'm thinking about doing. The way that I would organize this SOP.
Gavin Taylor: Yep.
Chris LaFay: Is one, if you want to get it as close to 100 as possible, the, the only way to do that.
Gavin Taylor: Is.
Chris LaFay: Basically to have a checklist that you go through on every single page. So you're thinking about it kind of globally and then it trickles down. I'm thinking more of it as what are the 10 things that you have to check on every single page. And then are you going through each of those, that checklist every single time on every single page? Because if you just say so for putting it in a different way. Well, I'm going to pick on the phone number aspect of this. If your SOP says make sure that the phone number is used correctly on all pages, somebody's just going to go and check that off because they put it in the header in the footer, and that's 85 to 90% correct. Because if they did type it in in the body section.
Gavin Taylor: Yep.
Chris LaFay: Nobody's going to go back through and check that. If their checklist says phone number correct, they check in the two spots, they check it off, they're done. So it's a mindset on how do you want QA to go through? So that's. But here's bucket number one is the checklist is actually going to be on a per page basis.
Gavin Taylor: Yep.
Chris LaFay: Option number two is even today. How can some of this get automated? So, for example, by default you have a site map, right. Like the. The website's done in qa, sorry, done for dev. It's. It's live on the Internet. It's not live on the main URL, but it's on the Internet. You, if you, you have a sitemap, you could pass that site map into AI and say, give me all of the phone numbers that are on this website.
Gavin Taylor: So one of the things that we do with that instead of AI, which we could ultimately do, is we do the Screaming Fog reports. Now, with Screaming Fog, though, it might not pull all the no index features. So I'm wondering if we should. That was where I broke it up into design and then Fulfillment Designer, then development in two stages before. Because in design I made sure that all the pages were crawlable. So I could use Scrimming Fog to crawl the site. And then in development, we said, okay, these pages need to be no index. But I'm trying to knock this out in like one pass, not break it up into two different segments because obviously that's causing issues. So with that being said, I'm gonna have to provide, hey, here are the no index pages. And then maybe we manually check those. Honestly, not very many because the noindex is just a PPC pages.
Chris LaFay: Also, they would be on the. Would they be on. Even though they're are. They're marked as no index. Would they be. You use Yoast. Would they be in the sitemap xml just flagged as no index. Like they're in the site map, right? Or are you no indexing them from the site map entirely?
Gavin Taylor: Great question, because given that you use.
Chris LaFay: Yoast, you don't even have to. You don't even have to use the.
Gavin Taylor: Screen XML sitemap, not XML xml. Okay. Pages.
Chris LaFay: Sorry. Yawn. In your face.
Gavin Taylor: See this one? It's this one. Yeah. It's completely pulled. So, Yeah,.
Chris LaFay: PPC is not. Is not being pulled into the site map.
Gavin Taylor: Correct.
Chris LaFay: Okay, cool. So when it's. No. Indexed, it literally does not index it inside of the sitemap. I thought maybe it was in there, but with a flag for like, don't read this page for the thing.
Gavin Taylor: Now that's another question. Is that a better way to go about this?
Chris LaFay: Oh, this is not my area of expertise. So I actually don't. I don't know how that actually works. I've. I always, I assumed when, you know, index something, it was still in the site map, it just was flagged as do not index this. But I could very much be wrong about that. So go back to your. Go back to your Google Doc.
Gavin Taylor: Oh,.
Chris LaFay: So, so this like, So screaming I'm trying to think of, does your developer have the ability to run a screaming frog report? Okay, do you have a. In the initial. In the. In the deliverables that you're giving to them? Do you send them in a. The initial screaming frog report from the old website? So again, trying to think of way like to automate some parts and pieces of this so that you don't have to. So that not everything is 100 manual is.
Gavin Taylor: You know, I'm on the same page as you. As I know with automation, there's, there's going to be pros and cons to both sides. Right.
Chris LaFay: Put it this way, if we're not going to automate anything, then the answer to the question is what is the checklist that a developer has to go through on a page by page basis? Yep, that's the. At the end of the day, that's the, like, that's the answer.
Gavin Taylor: Okay, so then what I need to do is first start with the QA SOP to basically just go through and figure out, okay, what am I actually looking for on a page by page basis? What am I looking for everywhere? And then from there I have a checklist to provide the design and development team.
Chris LaFay: I'm sorry, yeah, sorry, go ahead. Sorry.
Gavin Taylor: I have the do's and don'ts, I have coupons, I'll have. Navigation elements, I'll have whatever case may be. What am I looking at? Because really the biggest thing is. Header is a lot.
Chris LaFay: Basically you have global dev QA and then page by page qa. So global is things like logo in the header and footer. I would call it global. Global, global development. So thing. And you can expand on this because you know more about this than I do really. But like global is all of the script tags, logo in the header footer. Does the navigation bar in its structure correct? Not necessarily go through every single page, which is the navigation bar. Does it line up with what's necessary? Is the, the, the coupon functionality working? Is the schedule and appointment functionality working? Are the hours of operation the same in both places? Are there social media links? Those are the, those are the things that are like global. And then you have the page by page stuff which is where the screaming frog report can come in doing a comparison of old to new screaming frog. And then what are the gotchas that you are aware of because you've been doing this for a while. Of the weird stuff that happens on a page by page basis of like if there's a phone number typed in manually, is it correct? Is the company name correct? Because maybe they copied over content from an existing site, Those types of things. Now the way that, the way that Chris would do this is any page that has the ability to be copied over from an existing site, I would make a library of all that content and use the exact same funky name and all of it so that when that's copied over, you could then automate a crawl through the whole website and look for that really funky name and make sure that that's completely done. I would also, I would personally not allow people to type in phone numbers into body text of pages and require them to use a custom block. That's like a simple call to action strips. Call to action strip that dynamically pulls the phone number. So it's like if there's an action to be taken here, you drop this in and it says call us now at blah blah blah blah blah. And it's whatever their secondary color is,.
Gavin Taylor: Which I was just working on this site. So I want to know. Okay, this section right here. So for whatever reason this section is controlled somewhere else. So I go in and change it. I don't know what this is called.
Chris LaFay: Hold on.
Gavin Taylor: WP Administration party.
Chris LaFay: I'm taking some notes as you're scrolling through.
Gavin Taylor: Okay, this. So this is a team block. So this is more or less like a custom block. Now not a custom block. This is just manage where we can just put this block wherever and it updates all of them. Right.
Chris LaFay: 100.
Gavin Taylor: Okay, so you said basically do that with a phone number as well.
Chris LaFay: Yes, I would create like a call to action strip. Whether Actually my. So my opinion is that there is a single phone number field in the back end of WordPress inside of like a company option section. And then you create like an advanced custom fields block that's called phone number CTA strip. And literally all it does is color the background their secondary color and have the text color whatever the logical opposite is. And it says call us now at blah. And it pulls that number from the company option. So it's not even a block that people could mess up. You literally just drop it. Whereas what you're looking at there is a Gutenberg. Like it's a saved away sinkable pattern.
Gavin Taylor: How do I find my patterns? Sorry, like, yeah, it's.
Chris LaFay: It's really hard to do. So actually go go through and edit a page because they don't. They don't just actually, actually I'll take that back. Go to the appearance tab. I forgot it's actually. I know where it is.
Gavin Taylor: Hate about WordPress is every single one is a little bit different editor.
Chris LaFay: It's becoming a lot more similar now go to Patterns and then you have. There's a folder on the left hand side right underneath all patterns called My patterns. Yeah, these are the ones.
Gavin Taylor: Whole bunch of these and most of them are coupons and oh, I guess we have different ones.
Chris LaFay: Oh, and these are all synced as well. Interesting.
Gavin Taylor: Which I don't really understand why.
Chris LaFay: Like the Volkswagen photo row page. Right.
Gavin Taylor: It would be used on two. It would be used on the page and the SEO page. But I mean it doesn't make sense. Why it would be a pattern though is that's. That's such a static element that we will not go in and change.
Chris LaFay: It's overkill. Don't get me wrong.
Gavin Taylor: I think all this is, this is what I'm talking about. Like our old developer did this with everything. Like absolutely.
Chris LaFay: Also the coupon code saying that goes back to the whole. Like creating a custom post type with a single block that just displays the most recent three like it's done. You don't have all of these manual stuff now the good thing is they're synced so if you change them in one place, they change all over. But this is not the way to do it.
Gavin Taylor: Yeah, but it's also not synced all over. And that's the annoying part is. Okay, let's say.
Chris LaFay: Oh, so they didn't use so Even though all these blocks, even though all these sync patterns are created, they're not actually being used on pages.
Gavin Taylor: Well, they. Okay. On pages, yes. But one of the most overlooked things is inside of the email and I don't even know how to access the plugin files for that. But let's go back here, I'll show you what I mean. Okay, so I'm going to go here just because I know they took a screenshot. Okay, so this is what the code looks like inside of the email. The. The plugin for the coupons. Right. So while it does, that coupon pattern goes across the actual site itself, we still have to come in here and change the coupon that gets sent out.
Chris LaFay: What?
Gavin Taylor: I hate this plugin so much. So basically what happens in here is he custom coded?
Chris LaFay: Do you have access to the plugin? The. Because I have access to the theme. Do you have access to that plugin file?
Gavin Taylor: I'm sure it said no.
Chris LaFay: Because you have FTP access to these sites, right?
Gavin Taylor: Or should.
Chris LaFay: Yeah, could you send me over that? Oh, actually wait, hold on, hold on, hold on, hold on.
Gavin Taylor: See, I can't even access it. Yeah, this is the, this is the plugin. So I think I have to go to the site files.
Chris LaFay: Oh, there's just not, there's just not a settings panel. That's the only reason why that's there like that. They didn't create a settings panel for it. Yeah, yeah, yeah, no, that, that's all, that's all fine. There's no problem.
Gavin Taylor: So yeah, I just have to go to the site files and then he cut some coded. So let's go back to the actual site itself.
Chris LaFay: Oh, actually it didn't come in. Never mind. It didn't.
Gavin Taylor: So let's say. Okay, this is a better way of doing it. So what he did in the email, he custom coded this part of the coupon. And then in those lines of code you have to change like the price the these things manually and then that's what changes the what coupon is being sent out. And when you click email, this will fill out the hidden field right here, which is going to trigger which email inside of the plugin that gets sent. He's a pain in the ass, dude.
Chris LaFay: And that's a Gravity form, right?
Gavin Taylor: Yeah.
Chris LaFay: Enter your name, email, phone number, yes or no.
Gavin Taylor: So all the Gravity Forms are turned off, but it uses the Gravity form template, I think is what it is. It's really confusing.
Chris LaFay: Wait, Gravity Forms is installed and activated, right?
Gavin Taylor: It's installed.
Chris LaFay: Okay.
Gavin Taylor: And then we go here in settings we put. Oh, this one might be changed. This isn't where I want to be.
Chris LaFay: Okay. I think I just.
Gavin Taylor: So yeah, I guess it does have the coupon form in here.
Chris LaFay: Okay.
Gavin Taylor: So yes, it's gravity forms that's the good. Okay, hold on. So this is a process that makes the entire site unstable.
Chris LaFay: The coupon stuff?
Gavin Taylor: Yes, because.
Chris LaFay: And what is it? And is all that it's doing. Okay, hold on, let's back up because I think this actually might be a good usage of my time. Okay, so go back to the homepage for me. A coupon has a. A name which is basically the. Which is basically 6790. Yeah, actually that's actually a better name. So the name is what's underneath it. So you're a full synthetic oil change. It has a. What I'm just going to call a price which is either it's. It's text so it's not just a number so it could be free or 6797.
Gavin Taylor: Whatever it is.
Chris LaFay: It then has a description which is typ. Which is honestly just like a WYSIWYG editor. You can put in bullet points, you can put in headers, whatever it is. It then has disclaimer text as it's optional and it pulls the company logo because that's what the USB thing is on the left hand side.
Gavin Taylor: Correct.
Chris LaFay: And then for all of them like so that's. So actually the. The company logo is not even unique. That's just generic. So the four unique things are title, price, WYSIWYG description and terms.
Gavin Taylor: Yeah, well it's not even. This is a better one. Hold on. I guess in the terms we have the expiration date which.
Chris LaFay: Oh yeah. So expiration. Expiration. The. The for you the expiration date would be a number of days from today.
Gavin Taylor: Corvette 14 days which would be for.
Chris LaFay: The default would be 14 but you would might as well have the ability to override it just for kicks.
Gavin Taylor: And.
Chris LaFay: And then when you click email coupon I know you probably don't give a. Is the form the same all the time? It's because.
Gavin Taylor: I don't know why this is here. There's validation to be left unchanged. This should be hidden. I don't know why that's the.
Chris LaFay: Why is the form not the same every time it's name, email address. Like why. Why make it.
Gavin Taylor: If we have a multi location. Well this one we'll have like a slack location. This is kind of a workaround to try to make this work which this really was Messing with the coupon code plugin in the back. Because now we have to say, okay, if this location is picked, it goes to these emails of this one. It goes to these emails. So it kind of threw it completely off in the back end.
Chris LaFay: Why does it matter?
Gavin Taylor: Because the coupons are manage by location, not by the company as a whole.
Chris LaFay: But this is on there. So this is on their wet. Like this is on their main. You could get the 25 off coupon to any location.
Gavin Taylor: Yeah, but we send the coupon code to the store manager as well.
Chris LaFay: Oh, okay.
Gavin Taylor: So that way they can track it in the back end. And if they use. I don't know if Empire does it, but if they use a shop manager called octorocket, which is just like a cr, basically project manager for them. Right. We will email the actual software. So it goes into the pipeline, the CRM and they can call this lead.
Chris LaFay: They're like, hey, so because they get an email to a specific email address and then automatically goes into some of their stuff. Stuff.
Gavin Taylor: Correct.
Chris LaFay: Got it. Okay. Okay.
Gavin Taylor: So there's a lot of caveats here where there's like if this, then this. Which makes this whole process a little bit more difficult. But in my mind, I don't even know if Gravity Forms is the best way to go about this because Gravity Forms is very clunky on these sites.
Chris LaFay: Do you have to send these emails to people on the back end of your websites? Do you all subscribe to like Send grid or recent. Which. Which one? SendGrid send grid. So you're already setting up Send grid?
Gavin Taylor: Yep.
Chris LaFay: Okay. Oh, I've seen that listed. So. And is that. Are you doing that? I believe you're doing that at the plugin level. So it's over. Any email that is sent from WordPress is actually being sent through Send Grid.
Gavin Taylor: Right.
Chris LaFay: Okay, so I have. I have an idea for you.
Gavin Taylor: Before you say it, before you say it, let me show you how this is configured in the back end.
Chris LaFay: Oh, I know, I know. I know how Singer works.
Gavin Taylor: You basically have it's. We don't use it the right way. I hate the fact that they set it up this way. It's not a huge deal, but by.
Chris LaFay: The way, we normally have a hard stop at 10:30. I can go for another 15 minutes if you need to. If you.
Gavin Taylor: Yeah, that's fine.
Chris LaFay: Actually. Hey, while you're pulling that up and trying to figure out how to log in, I'm use a restroom really quick. I'll be right.
Gavin Taylor: It. Okay.
Chris LaFay: So I just realized I had Music on in the background this whole time. Have you. Have you heard that? Fantastic. It's just. It's just lo fi music at the end of the day.
Gavin Taylor: But. Okay, so we have one account that we send everything through instead of having the multiple accounts. Now the only reason I bring this up is in case you're trying to do like a form through here. Something similar that's kind of. I know that causes issues sometimes. So we have one.
Chris LaFay: I mean if you have all the domains verified, it shouldn't matter.
Gavin Taylor: Yeah. So all the. Where is it? Sender authentication. All these are here.
Chris LaFay: Yeah, you just have all the different subdomains. But yeah. Yep.
Gavin Taylor: Okay. I just don't know.
Chris LaFay: No, no, that. That's. That's one. That's 100. The right way to do. Like there's no issue with that at all. Okay. This is what I'm thinking. What, what I would like to do. I think that I can create you within this. Within the. The framework of my time that I have available a coupon management plugin that will crush this by leaps and bounds.
Gavin Taylor: That would be awesome because I.
Chris LaFay: Because a. You should be managing coupons with custom post types where you basically just go and fill in the data as a form and it's done to the block that you drop onto a page should just be automatic. You could have it just show either the three most recent ones or manually select the ones that you want and then they're just done. Then the pop up box with the form. Because you have Syngrid installed and are using the WordPress mail functionality, you don't have to use Gravity forms.
Gavin Taylor: Okay.
Chris LaFay: You can just have a basic coded out form in a modal box that will send the email to the email addresses in the settings panel of the plugin.
Gavin Taylor: Okay. So for.
Chris LaFay: You don't have to do anything different.
Gavin Taylor: Okay. For the style of coupon though, here are like the three different types of coupons we usually use. Which just throws a wrench in this a little bit. So this one right here is the one that we were just going over. This is a very common one. Now I hate this coupon because I don't know what that is. I don't. They just wanted this so we threw it on the. This is just like a very common one that we do for our clients. It's just the $25 50. 75 Off. And then we. A lot of the times will combine oil change coupons. Sometimes we separate it. A lot of times we combine it. So there are several different ways that we go about Designing these coupons. So I don't know how that will play in effect with that. And then we absolutely do want to have the ability to custom choose which coupons show up on the home page. Yep. And then on the coupon page itself, we just want like the three most used, which is what's going to be on the home page. It will be number one, two and three and then whatever else, it doesn't really matter from that. Now additionally, and this is just to throw a little bit more into this, sometimes we do this in the side panel where we can add specific coupons to this page or change these. So being able to drop individual coupons in here like blocks would be very beneficial as well. Yep.
Chris LaFay: All of that can be done using one single block. Okay, and then, and then you can customize. You can then basically select. You can basically say, hey, here's your block. Do you want to manually select the ones that you want to show or do you want to show just the most recent three? How many columns do you want them to be in? A one column, a two column or three column layout for that sidebar, you would just drop the block, set it to a one column layout, and then manually select the ones that you want. You could even technically add categories to them. So like you could actually, like, we could actually add something in there that's called categories. You could then categorize them and then the block could have a category drop down. So rather than showing the most, like manually selecting, you could just say show coupons from category X.
Gavin Taylor: Okay.
Chris LaFay: So like on the BMW page, if on the sidebar you wanted to pull a block, pull the block that just says always show coupons for BMWs. If there's no BMW coupons, it just doesn't, it just doesn't show anything. But if it is, it's there.
Gavin Taylor: Okay. Do you feel like this is going to be a lot less clunky than the current system as far as like page speakers?
Chris LaFay: I. I wouldn't. I wouldn't. So a. You won't need gravity if. Let me back up. Is gravity back up again. Is the only thing you're using Gravity forms, these pop ups.
Gavin Taylor: Yeah.
Chris LaFay: Then you'd be able to get rid of gravity forms.
Gavin Taylor: Lies. I think we use lies.
Chris LaFay: Don't. It's not good.
Gavin Taylor: I think it's for the contact page too.
Chris LaFay: Okay, well then you won't be able to get rid of gravity force.
Gavin Taylor: Page. We don't care too much about the page speed, so that's fine. Like if a page speed doesn't have to. If, if it doesn't have to load on the homepage or the PPC pages, we don't care.
Chris LaFay: Yeah. So I. Yeah. And that would be something different if you wanted to basically with removing like let's say that whatever I build you gets you 80% of the way.
Gavin Taylor: There's.
Chris LaFay: If you like, what you could possibly do is try to write some conditional scripting to where Gravity forms. Let me actually back up. I don't know if Gravity forms automatically loads at styles and JavaScript stuff across all pages no matter what or if it only loads it if there's a Gravity form on the page. I don't know if it's not smart, we might want to consider writing some code to try to make it smarter.
Gavin Taylor: Yep.
Chris LaFay: Because at the end of the day what this is going to be is going to be there. This isn't. This thing is not going to add page load time.
Gavin Taylor: Okay.
Chris LaFay: It's you're out. You're doing a couple of database. You're doing like a couple of database calls and outputting HTML like this is nothing. At the end of the day.
Gavin Taylor: We can add as many coupons.
Chris LaFay: You can add as many coupons as you want. You can categorize them however you want. You could even inside of your base theme already have coupons pre loaded up.
Gavin Taylor: Okay.
Chris LaFay: Like yeah, there'd be no. And there'd be none of this like sync pattern crap in the back end of your library.
Gavin Taylor: Oh, this is not the right one. Yeah, I think those are the only ones that we'll need to do.
Chris LaFay: I'm also with this going to build out the beginnings of the location. Like managing locations better is not going to be super thorough, but you'll have a location section that could eventually be built out to do handle multi like we had talked about it before to where it's like you have to write a lot of custom code every time you add a new multi location stuff. This is the beginning. This will be the beginning of having locations in its own separate area with its own custom fields attached to each location so that you could start thinking about how you could then implement that across the board so that you can simplify your multi location build outs. We're not doing anything major with that right now.
Gavin Taylor: So this, this is not. So I will go by but are.
Chris LaFay: These custom post types right now?
Gavin Taylor: Yeah, sure, I think so.
Chris LaFay: You said you think so.
Gavin Taylor: They're the individual pages. Yeah, whatever that.
Chris LaFay: Are they individual? Are they under the pages section or are they under a locations? That's actually very Key for me to know. Sorry, I didn't mean to interrupt you, but that was important.
Gavin Taylor: And this is also just like again, peace. Failed. What the hell? Oh, I have Keeper open over here.
Chris LaFay: We have to log into SiteGround to log into the back end of the website.
Gavin Taylor: I don't know, I don't know why it wouldn't work, but SiteGround just stores everything for me. Makes it a little bit easier to go. Because for whatever reason, like see, Did I not just type that in?
Chris LaFay: No, you, you had another. There was a piece of the URL in there, so. Oh, you had, I think empireautocare.com location/.
Gavin Taylor: Oh, gotcha. Gotcha. Okay, okay.
Chris LaFay: No, Yep, these are pages. Okay, perfect. Wonderful. That's what I needed to know.
Gavin Taylor: Okay, cool. So going back to that, this is another thing that we need to adjust eventually. But on the location side, if we go here to Fort Lauderdale, we basically duplicated that header and now when we go to appointments, it pulls up that specific appointment thing. But we also have other ones. So if we go back to home, we go to appointment. This is where it gets clunky with these third party schedulers. Because if I understand this correctly and how the developers explain this to me, if I go in here and accidentally click Fort Lauderdale, for example, but I say, oh no, not Fort Lauderdale, I want to go here to Palm Bay. It actually loads the same widget unless I refresh.
Chris LaFay: Got it. Okay.
Gavin Taylor: Which I don't understand why that is, but I guess that's how it looks.
Chris LaFay: So that we can deal with that later. But we're in the beginning. Like if I'm gonna build out a coupon section on the back end of your site and location section on the back end of your site, all the locations are going to just be right now are just a placeholder so that if there are multiple locations, it dynamically pulls the data. Later we can add custom fields to those and custom data points and just make things dynamic from the beginning to our view. Click Appointments. It'll go into the database, it'll see how many locations, it'll pull the iframe code from it, and if it's multi location, it'll give you the option to select different ones, et cetera, et cetera.
Gavin Taylor: Right.
Chris LaFay: That's, that's a later thing.
Gavin Taylor: So, okay, so when you actually can you do this on a staging site and show me what you're thinking that I can take to Craig. And then if I get the job.
Chris LaFay: Ahead with, I have a copy of all your code on my local computer. So I'm going to do all of this on my local machine. I'm going to show it to you. It's going to be and a. And it's going to be in a plugin. Then once I show it to you, you can then take it and load it onto whatever staging site you want for the coupons.
Gavin Taylor: I'll probably just create a staging site just to demonstrate this. Quick.
Chris LaFay: Craig, My coupon stuff will not be super styled up. Anybody can write CSS code to make it look however they want. So it'll be styled up enough to where you can you get the general gist of what the coupons are going to look like and the general gist of what the pop up will look like and then you can go to town with css.
Gavin Taylor: Okay. And this is actually the one I forgot. We're working on this still. Okay, that works.
Chris LaFay: Cool.
Gavin Taylor: I love this site. I don't know what it is. Okay. Yeah, I've taken a lot of your time today. I apologize. I was late. Yeah, let's do that. Because getting rid of that, basically being able to do it myself would be a lifesaver because right now I. I do not touch coupons.
Chris LaFay: Yeah, no, coupons will be. Coupons will be very, very, very simple.
Gavin Taylor: Is that. I think that codes in like the core website coding and if we screw it up, it crashes the site.
Chris LaFay: Yeah. There will be nothing to screw up on this.
Gavin Taylor: Okay, cool.
Chris LaFay: Like it's. You will literally add coupons and select which ones you want them to display and things will just work.
Gavin Taylor: I love it.
Chris LaFay: And then later like you can then add different styles to it later. Like we can create a drop down menu on that custom block that says, you know, what layout do you want to do? Layout A, B, C or D. So anyway.
Gavin Taylor: Oh yeah, Rocket. So we're moving over Rocket on Net and rocket. NET uses WordPress anyway, so it should be fine. Okay, cool, cool, cool. I appreciate you. I look forward to taking a look at this next week.
Chris LaFay: Yes. And that will. And also just so you know, next week I'm also going to be out Wednesday through Friday, so we'll be good for our meeting. I basically had these two weeks back to back. Not back to back, but separated a little bit. And then the rest of April I'm basically solid. So. Okay, so I'll work on all this next week. I'll show it to you on Tuesday and then that actually will be well timed because then you could take it back and do a little bit of searching and playing around with it some while I'm out. And then we can then circle back for feedback middle of April which sounds like a really long way away but it's only two weeks away. So yeah, the seventh will be a demo. 14Th will be your feet like actual feedback.
Gavin Taylor: Okay. I'm going to create the SOPs for what we have now and then I'm also send that to you. As far as I'm gonna actually send this to you ahead of time like what I have and what we need to can accomplish with this. So that way we can put that into what you're building. Really the biggest thing is working with Octorocket. I'll get that set over to today. Just like hey, here's the list of like the must haves in this. Sounds like you have a really clear example. And like the emails is the biggest thing is we need a two and from email addresses where the lead notification email goes to these email addresses the we're gonna need three. So this is the only big thing you actually need to know about these coupons outside what we've already talked about. So the user email that gets emailed, the coupon, the admin emails which are going to be Craig and the client and then an optional text only coupon that just has the information from. Hey, here's the user name, phone email coupon they downloaded expiration date that gets sent to the system. Now that has to be separate because it can't have the picture in it or the custom code in it has to be text only.
Chris LaFay: Picture. What do you mean a picture in it?
Gavin Taylor: So. Oh, I saw this too. So this is the user email that we have right now.
Chris LaFay: Is that an actual JPEG file?
Gavin Taylor: No, I think this is actually code.
Chris LaFay: Oh, okay.
Gavin Taylor: I'm pretty sure this is code.
Chris LaFay: So basically in the email that gets sent to a customer is a very simple HTML email with the. The title, the price, the description and the terms and conditions kind of formatted somewhat decently to look a little bit like a coupon.
Gavin Taylor: It's going to be like a short call to action here that we can update but it should also. This one's missing it, but it should also have the expiration date and then obviously the logo.
Chris LaFay: Okay, got it.
Gavin Taylor: And then for the. I'm just gonna call an API email is. I know it's not, but it makes the most sense to me. The API email that goes to the software has to be text only and it only gets sent out if we provide that email. And then lastly. Excuse me, what else was I gonna say? I'll send You a. I'll send you a list of everything.
Chris LaFay: What else is. So basically each location has an API email, as it could potentially have an API email that goes text only, but then also a GM email as well too, which is the primary recipient on the client side, right?
Gavin Taylor: Yeah. And basically I do this exact same one, but then I add the lead information above it. I'll just say, hey, it's Gavin Taylor, here's a phone number email. And then I send them this.
Chris LaFay: Got it. Okay, that all makes sense. So, okay, and then what is the email that the administration.
Gavin Taylor: That, that's. Sorry, that's the one that the admin email is going to the G Interval manager. Yeah.
Chris LaFay: Okay.
Gavin Taylor: Usually two different emails, it goes to Craig, which we're actually going to update to a coupons email.
Chris LaFay: And then that makes sense.
Gavin Taylor: Yeah. And then it goes to the location.
Chris LaFay: Got it.
Gavin Taylor: Yeah. We just want to make sure that we see those pop off throughout the day and when, when we see those stop, we know, oh, hey, something's going on. We need to take a look at this account.
Chris LaFay: Okay, got it. That all makes sense. Okay. I think I have enough information to be extraordinarily dangerous.
Gavin Taylor: Okay.
Chris LaFay: That know that the final look and feel of this might not be exactly what you're looking for. The goal here is to get the information into play so that it's editable and stylable by anybody for me to.
Gavin Taylor: Take this back to Craig. Basically what you're doing is using a custom form basically directly into some good.
Chris LaFay: Yes. For the, for the actual like emailing stuff. Yes.
Gavin Taylor: No, for the lead form on that.
Chris LaFay: Yeah. The lead form on that is going to be a custom form that requires no external plugins, that just sends email out. And because you have this Ingrid stuff already done, that becomes very simple and straightforward. Basically, if you're sending out email through any hosting account, I don't care what it is, SiteGround, WP, angel, whatever. There is a very strong likelihood that eventually that server gets spam blocked, not because of you, but because of other people on that server. But when you have something like Syngrid installed, the likelihood of going into spam is not zero, but it becomes a lot closer to zero.
Gavin Taylor: So it's 0.08% is what we see. Yep.
Chris LaFay: Basically it doesn't rely on. What typically happens is when you send email out through a web host, The pain point is the host blocking it, whereas send grid is not going to really block it. You already have everything done, basically you've done your due diligence. That's All I'm going to say is that there's not going to be any issue with the code sending the email. It's going to be is your domain just flag like it's completely off of all of our shoulders.
Gavin Taylor: So who do you use as a host by the way?
Chris LaFay: Like, oh, WP engine 100 WP engine. Just absolute night and day. Lovely. Fantastic. 10 Out of 10.
Gavin Taylor: Have you tried Rocket.net yet?
Chris LaFay: No.
Gavin Taylor: No.
Chris LaFay: Well, you're not for website hosting. Yeah, Definitely haven't tried. No, it. WP Engine is just so easy.
Gavin Taylor: Okay.
Chris LaFay: It's just, it's, it's cakewalk. I know it's more expensive than SiteGround, but it is.
Gavin Taylor: Rocket is too. But with Rocket, if you have more of a static site, it's supposed to be a lot faster. And then you also get WP Rocket in it included.
Chris LaFay: But Engine has a lot of that baked in. So they do like, they do like static. They actually do page level caching. So they're basically displaying just flat HTML files until you bust cache. So they're not having to do database calls the whole nine yards. Like. And yeah, it's just there's pros and cons of working with a big company like WP Engineering that's been around for a while. It is more expensive but they just have, they just have their stuff together. They also have like baked in CDN stuff as well too that if you wanted to deploy, you could also technically offload all of your image assets and other assets to like an Amazon S3 instance for long term storage, which kind of acts a little bit like a cdn. Don't quote me on that to a highly technical person because that's not a true statement, but it's, it inches toward true.
Gavin Taylor: Okay, but this is where all that goes over my head and I'm just lost. So.
Chris LaFay: No, I, I just, I, I love wp. It also does. Can also connect up git pipelines to it, so you could actually deploy straight from your machine in code to a server, which is also really nice. But anyway, I do have to go. I have a call in about 10 minutes. I have to do a little bit of prep for. But I have everything I need to be extraordinarily dangerous. And if I have any questions I will hit you up and let you know.
Gavin Taylor: Perfect. Thank you so much.
Chris LaFay: Awesome man. I'll catch you later.