About the author: Dan Cannon is the Lead Web Applications Developer for Nicasio Design and Development. Nicasio provides web based solutions for both individuals and businesses. Nicasio is highly proficient in WordPress design and development. Nicasio also owns and operates the E-Commerce solution NicE-Comm.
Throughout the course of developing WordPress sites on a daily basis I have needed to learn the proper way to develop a custom plugin. When I went about learning this process I learned The WordPress Codex does a good job at giving you the information you need to make a plugin, but it is lacking in some additional information. There have been a couple of good articles previously written about creating WordPress plugins. Below you will find the links to these articles, links to some useful areas of the WordPress Codex, and some of my own insights on WordPress plugin development.
Articles By Developers
The first article that really helped me was the How to Write a WordPress Plugin by Ronald Huereca. This is a multi-part guide that is available both on the web as well as in PDF format. This guide will take you through the whole process of creating plugin directories and files to publishing and promoting your plugin.
The fairly new article that I also really like is Anatomy of a WordPress Plugin by Jarkko Laine. This guide gets a little more informative than the first and covers some other topics. It is also good to hear the same material explained from 2 different sources in case one wasn’t clear to you.
The WordPress Codex
The next resource you will be using a lot of is the WordPress codex. If you are completely unfamiliar with the Codex I recommend you spend some time looking it over before moving onto the more detailed and advanced sections listed below. I have tried to compile a list of all of the links I find myself constantly using while developing a plugin.
Codex Home Page – Name says it all
Plugin Resources – Codex page for WordPress plugin development
Plugin API – The plugin API homepage. A must read
Plugin API/Action Reference – A list of most of the commonly used API calls and WordPress actions with a short description for each. This is a great resource that I am constantly using.
WPDB Class Information – The WPDB class is a powerful object oriented database class that allows you to quickly and easily run SQL queries from the WordPress environment. Another must read.
Use the Forums
The WordPress Forums are probably the single greatest source for information. If you have a question and goto the forums, first do a search to ensure the question you have has not already been answered. If you cannot find a suitable solution to your question then create a new topic. Be as descriptive as possible when asking questions. Include code examples or the web address of your development environment if needed. The more information you give to the community the better response you will get. Make sure to thank people for their help and close open questions after they have been answered.
Also, if you find the answer to your own problem before someone else does, go ahead and post your solution to your question. It is more than likely someone else will have the same question in the future and you can save them some time.
Use WAMP
WAMP is a Windows download that allows you to quickly and easily get Apache Web Server, PHP, and MySQL running on your local machine (you need all of these to install WordPress). This is preferable to doing plugin development on a web server for a few reasons.
1. You won’t mess up a live server if your plugin breaks something.
2. It will be much quicker to save changes and copy files to your WordPress install if you don’t have to FTP everytime.
3. Not directly related to plugin development, but you can also tinker with Apache and PHP settings to learn how these services work without crashing a live server.
So head on over to the WAMP Website and get a copy today for your plugin development.
My Thoughts On Plugin Development
Learn From Others
One of the best ways to learn about WordPress plugin development is to study other people’s plugins. You can even start out just trying to make modifications to other people’s plugins. Depending on the license the plugin has you may even be able to re-release it with your changes (make sure yo credit the original author of course)! If a plugin doesn’t have a license you will need to contact the author about modifiying the plugin.
Head over to the Official WordPress Plugin Directory for some great plugin examples (remember to check the license before making modifications!).
Always Revise
Continue to modify old projects as you learn more about plugin development. Applying a new technique to an old project might be the trick for a project that never felt quite right.
What Now?
If you read the content at all of the links in this article and examine a few existing plugins you will be well on your way to being a WordPress plugin developer. If you are looking for custom plugin development, please Contact Nicasio and we can estimate your project today.