CodeinWP is a blog about all things WordPress.
Our goal is to provide easy to digest content that helps you understand various aspects of the WordPress platform, plus what you can build with it.Every week, you can expect new tutorials, lists, comparison posts, and highly researched pieces that go into the inner workings of WordPress and how to get the most out of it.
Looking for some viable GoDaddy alternatives? As good as GoDaddy is for some customers, it is not perfect for all scenarios and website setups. You might need either something that's cheaper, more WordPress-optimized, more reliable, or all of the above. Here are the top GoDaddy alternatives in the market.
We asked 32 different agencies and freelancers in the dev-design-tech segment to tell us what makes a good client in their book, and what drives them crazy when things don't work out as planned. Here's what they said.
Hi guys! A new month, and another round of comics from CodeinWP! Get ready for a fresh dose of funny strips tackling the omnipresent GDPR ghost of Christmas past, the traps that employers set for candidates in order to get their contracts signed, AI inconsistencies, and the tricks that devs sometimes play on their users (intentionally or not). Of course, our usual tarot cards are not missing either. ♤
So, no matter if you’ve been having a bad or a great day so far, these comics – created by our friend João Santos – will make you laugh. Or at least we hope they will.
But before we get to that, I just wanted to remind you to check out our full collection of funny illustrations, which is growing every month with new stories.
June 2018 Comics w/ CodeinWP ✏️ … #GDPR #AI #WordPressPlugins #HiringTraps Click To Tweet
June 2018 Comics with CodeinWP: GDPR, Artificial Intelligence, WordPress Plugins Gone Wrong, Hiring Traps ⚠️
This AI seems to be malfunctioning
When dealing with AI, you better be able to speak their language!
So this is it for the June 2018 edition of our tech comics. If you like what you’re seeing, spare a share … it’ll be much appreciated! We’re planning even more awesome comic strips in the near future, so keep following our blog if you’re interested.
Furthermore, if it’s you who has a great idea or funny story that can be turned into a comic, don’t hesitate to share it with us, and we will probably use it in the upcoming months. But until then, we would love to know which one of the comics in this post is your favorite.
This is the June 2018 edition of “This Month in WordPress with CodeinWP.”
It’s that time of the year again (and I’m not talking about Christmas). May is the month when WordPress was born. To be exact, Matt Mullenweg and Mike Little launched the first version of WordPress on May 27, 2003. 15 years later, this fork of b2/cafelog has grown into a behemoth that powers more than 30% of the entire Internet (and is supported by a strong community of people from all around the world).
But more on that later.
Besides the birthday celebration, WordPress received a big new “minor” release, Gutenberg keeps growing, and the WordPress.org core developers are working hard on keeping things smooth and fair at the WordPress.org plugin and theme directories.
And beyond the news, we’ve also collected the best articles from the past month, so that you won’t leave our post without learning something new about WordPress.
#WP turns 15, new rules affecting theme / plugin authors – June 2018 #WordPress news w/ CodeinWP Click To Tweet
Here in Bucharest was no exception – we even ordered a big cake wishing Happy Birthday to our teenager (as seen in the picture). Our fellow pirates Rodica, Claudiu, and Radu went to the meetup and had a slice of this tasty sweet in the name of WordPress.
Moreover, aside from the birthday cakes, cupcakes, special swag, gatherings, and hundreds of #wp15 tweets, don’t forget to check out our summary of the evolution of WordPress UI here.
As another part of the birthday festivities, WordPress got a facelift to help it cope with the GDPR. WordPress 4.9.6, labeled as a “privacy and maintenance release”, came out on May 17th. Unlike the other releases of this kind that usually fix bugs and vulnerabilities, this one is a special edition dedicated to the GDPR (obviously) and includes privacy-related changes such as:
Since last month, the WordPress Theme Review Team is working on streamlining the process of reviewing and accepting new themes on WordPress.org. After weeks of brainstorming and thinking about various ideas and formulas that might help, the guys decided on launching the Trusted Authors Program. This program puts together those authors who always submit themes that follow the rules almost entirely (i.e. three or fewer issues during the review process).
If you are one of these names and consistently have smooth encounters with the Theme Review Team, you can apply for the program by commenting here with a ticket link for the team to take into consideration (the ticket can be a recently approved theme or a new one that is still pending review). Since the announcement went live, several submissions were added daily, so the review team will have a lot of authors to look into in the upcoming months.
In another step towards making the review processes more efficient; the WordPress core team made the decision to remove unused plugins from the WordPress.org repo.
The “unused” term raised questions among developers since it is pretty vague. Mika Epstein, who wrote the announcement, updated the post later by adding “Unused means LITERALLY unused. No one uploaded code. Ever.”
According to Epstein, there are 9100 approved and unused plugins in the directory. So, if you don’t add any code to your plugin six months tops after it was published, it gets removed. The silver lining is that, once a plugin is closed, its slug will be free to use by other authors in the future.
Gutenberg is taking one step ahead too. Two steps, actually. Because two versions of the plugin are released each month. So now we’re skipping straight to 2.9 and are having a look at the new features that it brings:
Support for pinning plugin items in the main editor header.
Shortcut tooltips for the main toolbar.
Automatic handling of focus for RichText component.
After skipping 2017, WordSesh is back with the fifth edition, which will take place on July 25th. For those who are not aware, WordSesh is an online conference that puts together a mixture of sessions and live podcasts. The schedule can be found via the link above, most of the talks being addressed to developers and consultants. Sign up if you want to join!
The WordPress.org repo is full of outdated and vulnerable plugins because not all authors maintain plugins over time. So, if you do not do your research before installing one, you’re exposing yourself to unnecessary risks. What plugins deserve your trust? Here’s the answer to this question.
If you are a Reddit (and WordPress) fan, you can merge your two hobbies into one: you can spend time on Reddit while reading stuff about WordPress. Elegant Themes looked for the most active and interesting subreddits that you can follow and use as a source of information for your projects.
You probably know by now how WooCommerce or Easy Digital Downloads work when you want to sell products online. But what if you plan to sell documents instead of clothes, for example? Well, you can do that too with the two aforementioned plugins. Barn2 Media shows you how.
Which method is more efficient when it comes to paying your freelancers? Here are the fixed-price and time-tracking methods explained, together with their pros and cons. Have a read and pick the one that’s more convenient to your budget.
As an online store owner, you need to keep up with the latest marketing strategies. Believe it or not, email marketing is still a thing since it hit the internet back in the ’90s. But it evolved in so many ways, of course. Based on what you intend to deliver through your business, emails can take multiple forms. See which ones work when it comes to activating in the e-commerce market.
In the previous posts, we talked about both writers’ and developers’ duty to keep their content and sites SEO-friendly. But what about designers? What do they need to do to make sure their practices meet the current SEO requirements? Here’s a detailed article from Smashing Magazine covering all these concerns.
Currently, you don’t have the option to categorize the items in your WordPress media library. I mean, by default; because with plugins you can do that, yes. So if you want to arrange your images in categories and not keep them all clustered in one single place, WPLift has a suggestion for you.
As WordPress professionals, we tend to specialize in one or two fields at most. I mean, you can be a developer and writer, or marketer and writer, or you can be a designer and the organizer of your local meetup etc. Only a few people can have all these professions at once. But if want to test waters and experiment with new stuff to spice up your career a bit, here’s a list of the best activities you can try while still sticking around WordPress.
Is .com the king when it comes to site domains? It’s true that it is the most popular, but your site will still be successful even if you’re using a different suffix. See what the SEO implications are of not using .com and what the alternatives are.
That’s it for June 2018. Anything we missed?
#WP turns 15, new rules affecting theme / plugin authors – June 2018 #WordPress news w/ CodeinWP Click To Tweet
Don’t forget to join our crash course on speeding up your WordPress site. With some simple fixes, you can reduce your loading time by even 50-80%:
One thing that’s fairly surprising when you start offering software products is the never-ending stream of feature requests. And the more popular your “thing” gets, the more requests you’ll receive, obviously.
What’s particularly difficult about that is making sure that all requests get addressed, and whoever submitted them gets a response / explanation. With enough requests coming in, you really do need a system in place to make handling them efficient.
Today, let’s welcome Katie Keith of Barn2, who’s going to share how they built a better, more effective “feature request” system for their WordPress plugins, what the result was, and how you can emulate the same principles.
This is a contribution by Katie Keith:
When we started selling plugins 2 years ago, I was amazed at how many feature requests we received. It felt like no one was happy with our plugins, as everyone wanted something that wasn’t possible!
At first, the number and range of feature requests was disheartening and a bit overwhelming. Over time, I’ve learned to view customer feedback and feature requests as an opportunity rather than a threat.
#casestudy Building a better ‘feature request’ system for your #WordPress plugins Click To Tweet
This is the story of how I created a better feedback system for our WordPress plugins. I’ll share why feature requests are so important, how Barn2 collects them from our customers, and how to manage a feature request list. I’ll give you my top tips on how to communicate with customers about feature requests, turning a “No” into a positive. Finally, I’ll tell you how to use your feedback system to create an effective road map for improving your plugins in a way that maximizes future sales.
Feature requests are a huge opportunity
I believe that every feature request is an opportunity to make your plugin business more successful.
Not everyone would agree with me. Before we switched from designing websites to selling plugins, I lost count of the number of plugin companies who seemed resentful when I sent them a feature request. As part of a web design project, I would often install a plugin for a client and find that it lacked a vital feature. When I contacted the plugin company to request the feature, they would typically reply in a defensive way. They seemed to think that their plugin was already perfect and I was the only person in the world who thought it was missing something.
I think that people with this attitude are missing out on opportunities to improve their plugins.
Why feature requests are a good thing
There are lots of reasons why feature requests should be viewed positively:
They’re a way of getting valuable insider knowledge on gaps in the market that you can exploit and profit from.
You can measure demand for each feature and prioritize development time to maximize future sales.
Even if you say “No” to a feature request, it’s an opportunity to show you’re listening and improve customer loyalty, so they’re more likely to keep renewing their plugin license.
You learn more about how people are using your plugins. This can feed into your marketing activities and uncover new use cases.
I’m not saying that you should implement every feature that your customers request. That would result in a bloated plugin that’s a nightmare to maintain. It would also make it impossible for you to prioritize or use your time wisely.
Instead, you should use feature requests as evidence on how to make your plugins more successful.
The first challenge is how to prevent customers from requesting features that already exist! I used to find that lots of our plugin customers were sending feature requests for things that were already possible. It was nice to tell them the good news, but would have been even better if they could have discovered it for themselves! That’s why it’s so important to create a good knowledge base and clear lists of your plugin’s features.
How Barn2 collects feature requests
Customers provide feedback at different times and in different ways. Our feature request system allows customers to feed back when the time is right for them:
General support requests – The majority of feature requests are disguised as general support queries. The customer contacts us to ask how to do something with one of our plugins. Unfortunately this isn’t possible, so I have to explain and treat it as a feature request. The key point is that I don’t just reply saying “No”. Instead, their enquiry feeds into our feature request system so that we can monitor these requests and improve our plugins in future. I’ll share exactly how we do this later.
Feature request form – Barn2’s plugin knowledge base contains a ‘Feature Request’ button immediately below the ‘Get Support’ button. This provides an easy and dedicated way for people to request new features.
Feedback request emails – We use MailChimp to send a quick automated email to every customer 2 days after their purchase. This email asks for feedback, which feeds into our feature request system. We also use the Jilt abandoned cart plugin to request feedback from people who didn’t buy from us.
Knowledge base analytics – We use the Heroic Knowledge Base plugin for our knowledge base. It comes with analytics, which we use to evaluate the knowledge base articles. While the main purpose of this data is to improve the documentation, it’s also helpful in identifying missing features. For example, customers sometimes leave negative comments because something wasn’t possible using one of our plugins. The data about failed knowledge base searches is also helpful in identifying gaps.
Managing a feature request list
Our plugin feature request list is a Google spreadsheet, with a separate tab for each plugin. We have further tabs for features that we have already implemented.
The feature request tab contains the following columns:
Feature – A brief description of the feature
Demand (1-3) – A score showing the number of people who have requested the feature. 1 is low, 3 is high. This score is based on the number of votes in column 6.
Impact (1-3) – A score showing how important the feature is to future sales. For example, a minor enhancement that will please existing customers would score 1; whereas a feature that would open up the plugin to a new market and significantly increase sales would score 3.
Effort (1-3) – A score indicating the difficulty in adding the feature. Unlike the other columns, 1 is high and 3 is low. A simple feature will get a score of 3, whereas one that would take weeks of development time would score 1.
Score – This column is calculated automatically based on the scores in columns 2, 3 and 4. The formula used for this is: =SUM(B2:D2) – this is for row 2, and you would need to change the number for each row.
# Votes – We use this column to manually record the actual number of requests for each feature.
Notify – This is where we add details of the customers who have made the feature request. We use it to notify them when the feature becomes available.
I’ll tell you how to prioritize new features based on this data in a minute.
Responding to feature requests
When you receive a feature request for something that isn’t possible in your plugin, your response should depend on which of the following categories it falls into.
Items already on the feature request list
You’ll often be asked for new features that are already on your feature request list. This happens to me at least once a day! When this happens, you can send a helpful and honest reply. Your response will depend on how likely you are to add the feature in future:
Popular features already on your plugin road map. I typically reply with something like this: “Unfortunately what you’re asking for isn’t currently possible. However, quite a few people have requested this and we’re likely to develop it in the near future. I will add your details to our feature request list so that we can let you know when it becomes available.” If you have a timescale for this feature, then that’s great – tell them. If not, don’t make any false promises. In my experience, customers are usually happy with this response and don’t demand an exact timeframe.
Non-priority features already on the feature request list. I normally tell the customer something like this: “Unfortunately this isn’t currently possible. You’re the 5th person who has requested this, and I will add you as another vote on our feature request list. We will add this feature if enough people ask in future. Realistically, I can’t tell you how likely this is because there are currently 139 items on our feature request list and we need to prioritize the ones that more people want. I will keep your details so that we can notify you if we add this feature in future.” I find that although this is bad news, customers appreciate and respect the honesty. Every customer thinks that the feature they want will be useful to everyone else, and can’t imagine why we haven’t added it already. Providing facts and figures puts their feature request into perspective, and they understand why we are prioritizing other tasks.
Every few days, I also receive a request for a feature that no one else has asked for yet. If I feel that it would improve the plugin, then I add it as a new row on the feature request spreadsheet.
Respond to the customer with something like this: “Thanks for the suggestion! Unfortunately this isn’t possible at the moment, and you’re the first person to request this. I will add it to our feature request list and we may add it in the future if enough people ask. I’ll keep your details so that we can notify you if this ever happens.”
Feature requests outside the scope of the plugin
You’ll receive lots of feature requests that aren’t really applicable to your plugin. For example, we have two WordPress table plugins – WooCommerce Product Table and Posts Table Pro – which create instant tables listing WooCommerce products or other types of WordPress content. Lots of customers request an import facility to automatically add their products/documents/posts/etc. in bulk.
The scope of these plugins is to display content from the WordPress database in a table layout. They don’t affect how the content is added or stored. Instead of viewing these queries as feature requests, I tell the customer about the built-in importer that comes with WordPress/WooCommerce. If those aren’t suitable then I recommend a suitable import plugin. Once the customer understands that they can use these tools to import their content and then display it using our table plugins, they no longer feel that our plugins are missing anything.
Other customers request features that are incredibly specific and not repeatable. When this happens, gently explain that their requirement is very specific and they will need to ask a developer to build it for them (ideally on top of your plugin!).
It may be that some feature requests are a great idea for a new plugin. For example, when we first released Posts Table Pro, lots of users started requesting WooCommerce-specific features such as add to cart buttons. Since Posts Table Pro was a generic plugin to list any type of WordPress content in a table, it didn’t feel appropriate to add WooCommerce-specific features to it. Instead, we launched WooCommerce Product Table and it is now our bestselling plugin!
Bonus tip: get paid for your recommendations
If you’re recommending a specific plugin regularly, sign up as an affiliate and you can even earn some commission! For example, we recommend a lot of official WooCommerce extensions to use alongside our WooCommerce plugins, and receive over $300/month commission as a result.
We’re also Codeable affiliates and when a customer would need to pay a developer to achieve their requirement, we recommend that they post a job on Codeable to find someone suitable. This helps the customer, while also rewarding us for the recommendation.
By now, you’ll have spotted that it’s important to respond to all feature requests in a positive way. This doesn’t mean that you need to change your plugin for every (or indeed any!) customer who asks. What it means is that you should signpost the customer to solutions that will help them.
If your plugin can’t quite do what the customer needs, think creatively about some workarounds that might help them. It only takes a few minutes of your time, or less if you save it as a canned response to re-use for other customers. And it keeps customers happy and offers a way for them to keep using your plugin.
This is a real plugin support email that I sent while writing this article:
To help you think about the types of workaround you can suggest, here are some examples from our own plugin feature requests:
Someone using WooCommerce Product Table reported that one of the options on the settings page in our plugin didn’t work. This particular option could also be controlled directly in the product table shortcode, so we advised them to use it until we released a new version with the fix.
Another WooCommerce Product Table customer wanted to use our plugin with a third party product options plugin, instead of the official Product Add-Ons plugin that we have integrated with. We advised them to either switch to the official plugin, or let customers click through from the product table to the single product page where they could choose product options from the other plugin.
Users of our WooCommerce Private Store plugin sometimes get confused because they’ve set up the plugin to unlock the hidden shop for logged in users, but the plugin hides the WooCommerce Account page containing the login form! Hiding the Account page is intended behavior because our plugin hides all WooCommerce-related pages. Instead of viewing this as a feature request, we tell customers about other ways to create a front end login page that is not hidden by our plugin.
You know your plugins better than anyone. Learn about how people are using them to achieve different requirements, and use this knowledge to advise your customers more effectively.
How to prioritize new features
When you’re planning new features, you need an evidence-based way to decide which ones to prioritize. Fortunately, the feature request list I described earlier will give you exactly this!
Sort your feature request spreadsheet by column 5 (Score), in descending order. At the top of the list, you’ll discover which features are most in demand, realistic to develop and will make a difference to your sales.
Of course it’s not an exact science. Read through the top few features manually, and ignore any that don’t fit with your current direction. For example, the item at the top of the feature request list for our WooCommerce Product Table plugin would take many months to develop. Even though this item has a poor score for ‘Effort’, it has big demand which has pushed it to the top of the list. If we’re looking for simpler features to develop quickly then we will skip this item and focus on other tasks which are easier to develop, but still have plenty of demand.
But overall, sorting your feature request by score is an excellent start. Look through the most popular features and use this to plan a plugin road map for the short and medium term.
Implementing new features
When you launch new features, there are a few ways to promote them:
Email individual customers whose names are on the feature request list against that feature. They’ll appreciate the personal touch and will be more likely to renew their plugin license next year!
Email your existing plugin users to tell them about the new feature.
For major new features that will attract new customers, publish a blog post and publicize it.
When we first launched WooCommerce Product Table in October 2016, a huge number of people asked to display product variations in the table. (We hadn’t included this in our initial minimum viable product because it was a lot of work. We wanted to see if the plugin would sell first.)
It soon became evident that the plugin would be successful and was worth investing more time in. Support for variable products shot straight to the top of the feature request list.
In the 2 months before adding this feature, we received 24 sales. In the 2 months afterwards, we had 104 sales. Obviously it was a new plugin and was gathering momentum, so sales would have grown anyway. However, a huge proportion of our customers display variations in the product table, and this is essential to popular use cases such as creating a one-page WooCommerce order form and restaurant ordering system. I’m convinced that the plugin wouldn’t be nearly as successful if we hadn’t listened to our customers and added support for variations.
How to build a “Feature Request” system: wrapping up
I hope I’ve convinced you that customer feedback and feature requests are a huge opportunity for any plugin business.
They allow you to plan the future development of your plugins more effectively, adding new features that will directly increase your success. Even where you have to say “No” to the customer, they’re an opportunity to show you’re listening, build customer loyalty, earn affiliate commission by recommending other plugins and developers, and even to get new plugin ideas!
How does your own feedback request system work? I’d love to know how it differs to the one I’ve described above. Are there are any important fields I’ve missed from the feedback request spreadsheet? Can you suggest any improvements to my formula for prioritizing feedback requests? Please let me know in the comments below.
#casestudy Building a better ‘feature request’ system for your #WordPress plugins Click To Tweet
About the author: Operations Director at Barn2 Media, Katie Keith is a WordPress web designer who specializes in helping companies to..
Planning to launch a website to support a cause? WordPress is the tool to handle the task! There are many great charity WordPress themes that will provide you with a design that gets noticed. Plus, those themes also offer features that will improve the communication process between you and the people who want to get involved.
How? The charity WordPress themes featured here come with integrated donation forms, easy payment gateways, diverse cause showcases, and events calendars for your non-profit. Aside from that, these templates are packed with drag-and-drop design options thanks to built-in page builders. Using one of these ready-made interfaces will spare you a lot of customization work and time.
Without further ado, here are the top charity WordPress themes that we found during our research. They are suitable for charity foundations, NGOs, fundraising, or any other type of non-profit associations. We would love to know which of these themes is your favorite! Don’t forget to share in the comments once you’re done reading. 😃