Latest Posts

WordPress Plugins Are Dead

iOS and Android have forever changed what people expect from their technology. For the most part, however, that wave of expectations hasn’t hit the WordPress community. Sure, WordPress itself functions a lot like iOS and Android in a platform/app context… But, most of its plugins don’t. That is changing. And, in this new world… you’re either a plaform or an app… but you’re NEVER a plugin. App vs Platform iOS is a platform. Android is a platform. WordPress is a platform. Evernote is an app. Gmail is an app. SmartS3 is an app. Platforms are the operating system. Apps are the software that run

Read More »

Should I Use mysqli_real_escape_string With Prepared Statements in PHP?

Graham recently asked me: Do I still need to used mysqli_real_escape_string when used prepared statements in PHP? The simple answer is no. The way it used to work is that you would take form input data, put that into a variable, and inject that data into your MySQL query in order to add that data to the database. Now, a big problem with that is SQL Injection attacks where a hacker could inject SQL code into your query and perform actions on your database… which is something you definitely don’t want. So, the standard solution became using mysql_real_escape_string to sanitize

Read More »

How Being Lazy Can Help You Stop Procrastinating

Listen to the Full 30-Minute Podcast Version [powerpress] Let me give you an example: Yesterday, I was feeling completely burnt out. For the last couple weeks, I had been pushing real hard on a number of projects, working late nights, and basically strapped to my desk 24/7. And, it was starting to catch up to me. But, I had one more project I needed to finish and I really didn’t want to do it. Now, I’ve learned over the years that the quality of my work is pretty horrific when I force myself to work when I don’t want to.

Read More »

How to Make More Money in Web Design

Listen to the Full 30-Minute Podcast Version [powerpress] Are You Losing Money Trying to Be Everything to Everybody? I have 100% been guilty of this. When I first started marketing my services, I had a shotgun blast of an offer hoping potential clients would pick up on something and get in touch with me. The problem? It reeks of desperation. And, clients don’t want a desperate developer. The more you try to be everything to everybody, the more you’ll be nothing to nobody. Potential clients won’t really know what your strengths are and what your core offer is. And, they’ll

Read More »

How Wealthy Developers REALLY Succeed

You know, I’ve spent a lot of time teaching coders technical skills. How to upload files using PHP, how to create website templates, how to hack, twist and mold WordPress to your will, and so on. In fact, the entire site over at LearnPHP.co is about exactly this when it comes to PHP. I have an entire category on this site called Code Snippets where I do exactly that. All of my YouTube videos do the exact same thing. But, to be honest, I’ve never really talked much about what it REALLY takes to be successful as a developer. Because,

Read More »

How NOT to Hire a Freelance Developer

I’ve seen a rash of really bad job postings on Elance lately and I thought I’d step in to offer a little (ahem) constructive criticism. Here’s the thing. Bad job postings are bad for everybody, because they lead to unclear expectations. Developers hate it because we have no idea how to bid these kinds of jobs… and the job posters hate it because they always end up paying more and getting less. Now, certainly there’s something to be said for how a developer should submit their proposal back; however, 1) I can’t see how other developers do it, so I

Read More »

How to Monetize Your Content in 2014

What will the future of content monetization look like? Are we forever stuck with an ad-based, privacy-encroaching business model (ala Facebook)? Does the failure of NewsCorp’s “The Daily” mean fee-based content is dead? What is the trend and how can you profit? These are the questions I want to answer in this article. I’ve been thinking about content monetization a LOT lately. Not because I’m weird, but because that’s what the company I work for (WishList Products) does… at least in my eyes. Right now, we call ourselves a membership site plugin, but let’s be real… our software does a

Read More »

How to Add a Login/Logout Link to WordPress Menus

In my last post, I talked about how to add a custom meta box with a custom link to WordPress navigation menus. Several times, I mentioned how I needed to add a specific class to that link for WishList Login 2.0, so that I could find that link later and do stuff with it. This is the part where we “do stuff” with that link. Specifically, we’re going to hook into the navigation menu before it displays, find our link and change its display based on the current user’s login status. Here’s what it looks like: So, if they’re logged

Read More »

How to Add a Fully Functional Custom Meta Box to WordPress Navigation Menus

When I created WishList Login 2.0, I wanted to an easy way for users to add a dynamic login/logout link to their navigation menus. As simple as it sounds, it’s not something you can do natively in WordPress and we can requests for this kind of thing all the time. In WishList Login 1.0, I had added an entire admin interface in the plugin settings that had all the necessary options for creating the link, editing its text, setting its position, and so on. Of course, this was before WordPress added menus, so I didn’t have much choice… but, now

Read More »

Think Small

What if I could tell you the secret making a major breakthrough in your work… in 2 words? How to stop spinning your wheels 1,000 miles an hour but getting nowhere? How to stop being overwhelmed with “everything you’ve gotta do” and start working on only the things that matter?

Read More »

How to Create an ics Import File Using PHP

In this video, you’ll learn how to create an .ics import file using PHP. This allows you to dynamically generate the .ics file based on stored event data. Users can then download the file and import the event information in their calendar of choice… Outlook, Thunderbird(Lightning), Apple Calendar, etc.

Read More »

Plugins, Platforms, and My Plan for World Domination

I’ve been thinking a lot lately about WishList Member and its future. Specifically, how the web as a whole is evolving and what role WLM will play in that web. Looking into my magic “crystal ball”, I’m seeing some exciting things ahead if we take the right approach and develop the right mindset for the changes that are occurring with the greater internet. Of course, none of this makes sense unless you know my Secret Plan for World Domination (add in ominous tone). I don’t mind sharing it, because while it’s simple to understand… it’s pretty damn difficult to implement.

Read More »

How to Destroy Your Business Legacy… And Why You Shouldn’t

Ethics in business today suck. Entrepreneurs are too focused on profit as the ultimate goal. Profit is NOT the ultimate goal. Business Is a Game In baseball, a power hitter is often measured by how many homeruns he hits. As fans, we idolize and adore good hitters. But, hitting homeruns isn’t his ultimate goal. It’s a means to an end. The end is winning games… and winning enough games to be called a champion. Often times, his legacy depends on whether or not he won a championship… regardless of how many homeruns he hits. And, if he cheats to win,

Read More »

7 Reasons Why You Should Start Using the Official Facebook for WordPress Plugin (and 3 Reasons Why You Shouldn’t)

Facebook just launched its official WordPress plugin which allows you to “easily” integrate Facebook features into your WordPress website. I’ve spent the last day or so playing around with it and here’s my initial thoughts. Why You Should Install Facebook for WordPress 1. Easy connection to your Facebook account. If you’ve ever setup one of the many Facebook plugins for WordPress, you’ll know that you typically have to create a new application in Facebook, grab the API Key and API Secret from your app, and paste them into your plugin. This plugin is no different, except you only need to

Read More »

This Is MY Blog!

If you’ve been following this site for a bit, you’ll know it’s been primarily about coding and contained all my various coding tutorials and such. Well, that’s changed. I’ve officially moved all my coding tutorials over to http://www.learnphp.co and I’m taking this blog back as my personal blog. If you want the coding tutorials, head over there. Here, I’ll be posting about pretty much whatever I want. You can follow me here if you’d like to keep in touch with me personally. (photo by a2gemma)

Read More »

How to Sort Multidimensional Arrays Using PHP

In this video, you’ll learn how to sort multidimensional arrays in PHP. You’ll not only learn basic sorting using array_multisort(), but you’ll also see a more advanced custom function for sorting multidimensional arrays by a specific key. Multidimensional arrays can be one of the more confusing parts about learning PHP, but this video will help you get your head around it and give you some tools for sorting your multidimensional arrays that are simple and straight-forward.

Read More »

How to Create an HTML Select Box From a MySQL Results Array Using PHP

This is a question I get quite a bit, so I figured I’d write a post on it: How do I create an HTML select box with options from data in my database? Here’s how: The Query First, let’s look at our query. Yours might look something like this: That will select everything in our table and loop it into an array of objects containing the results. Now, we can take that array and create a HTML select box with it. The HTML Select Box Now, that we have our array of objects from our database we can use it

Read More »

The simple secret to high-paying freelance clients?

Enter your email below and I’ll show how to charge more and build a 100K freelance business from scratch:

Clients Like:

Inc. Magazine Logo
Lewis Howes Logo
Ray Edwards Logo

WHAT OTHERS ARE SAYING

Xan Barksdale

Xan Barksdale

Very professional worker who is extremely knowledgable in WordPress and Wishlist Member. I would definitely hire again.

Thabo Motsoahae

John is one of the best instructors I have come across, I learned a lot from his online tutorials.

Bradley Smith

John and I have worked together on numerous projects. John is very quick and efficient and was a pleasure to work with.

Oliver Wainwright

Oliver Wainwright

I’m a fan. I have completed several of John’s courses. I find him very knowledgeable and he has a great delivery.

Steve Dimmick

Steve Dimmick

John has provided expert knowledge and advice on multiple occasions that have helped me better serve my clients. John is a Rockstar!

Jim DeJonge

Jim DeJonge

John has a relaxed and engaging manner. His advice is solid and the explanations are well thought out.

Andrew Malone

Andrew Malone

John Morris is exceptional in his ability to give focused insight into Freelancing and starting one’s business. His direct methods inspire confidence in his honesty.

Jason Rumley

Jason Rumley

John has a habit of over-delivering on the expectations he sets up. That’s why he’s the best.

Sukh Plaha

John is a fantastic and patient tutor, who is not just able to share knowledge and communicate it very effectively – but able to support one in applying it. However, I believe that John has a very rare ability to go further than just imparting knowledge and showing one how to apply it. He is able to innately provoke one’s curiosity when explaining and demonstrating concepts, to the extent that one can explore and unravel their own learning journey. Thanks very much John!

Ray Edwards

I recommend John every chance I get. If every person I worked with were as committed to excellence, punctuality, value, and unquestionable integrity… the world would be a better place. Highest recommendation.

Lewis Howes

John is amazing at building membership sites. He converted one of my sites over from it’s existing (hardly working) platform over to the clean and simple to use WishList membership platform. I highly recommend using John and WishList for any of your membership site needs.

Lori Grant

John did an outstanding job on my project. I highly recommend him and look forward to working with him on future projects.

Bob Patterson

Not only is John a very talented programmer and developer, he is also an excellent communicator. He has a talent for taking complex subjects and communicating them in terms that anyone can understand. This is a rare combination. This ability has enabled me to take my skills and knowledge to the next level. Thank you John for for all that you do.