Publishing a Plugin to the WordPress Plugin Directory

0

In 2001, a weblog instrument known as b2/cafelog was launched by Michel Valdrighi. Matt Mullenweg and Mike Little forked b2/cafelog and created WordPress in 2003. In accordance with WordPress.org, “WordPress was born out of a want for a chic, well-architectured private publishing system constructed on PHP and MySQL and licensed beneath the GPL”. In 2004, plugins have been launched to increase WordPress’ core performance. Right here’s what the WordPress Plugin Listing appeared like in November 2004:

WP-Plugins.net; Old WordPress Plugin Directory November 2004
Supply: http://web.archive.org/web/20041129215547/http://wp-plugins.net/

At that time in 2004, there have been 46 plugins out there for WordPress. In just below eleven years, there are actually over 42,697 plugins out there within the WordPress Plugin Listing and there have been over1,161,033,914 plugin downloads. Right here’s what the WordPress Plugin Listing seems like in January 2016:

WordPress Plugin Directory Jan 2016

All the plugins that seem within the WordPress Plugin Listing are free to make use of and distribute. They’re licensed beneath the Common Public License (GPL). Many pioneers have revealed plugins within the WordPress Plugin Listing and my brother and I needed to be part of this unique membership. We’ll offer you an inside have a look at the WordPress Plugin Listing submission course of by sharing our expertise on deciding to create, creating, and publishing a plugin within the WordPress Plugin Listing. We’ll additionally present step-by-step directions on methods to add your plugin to WordPress’ central Subversion repository for each Mac and Home windows customers.

[avatar user=”dina123″ size=”original” align=”right” link=”file” target=”_blank” /]

Why Publish Your WordPress Plugin?

The explanations individuals publish plugins within the WordPress Plugin Listing are clearly various. A few examples are defined beneath:

  • You see a necessity for performance that doesn’t exist in a plugin within the listing
  • You see a market alternative
  • You wish to construct a neighborhood round your plugin
  • Your favourite plugin doesn’t provide further performance that you really want
  • You’re annoyed by how a lot some plugins cost for additional extensions and also you suppose you may construct these options at a decrease value
  • You wish to simplify performance in a manner that doesn’t exist
  • You wish to contribute to the WordPress Plugin Listing with the intention to be part of the neighborhood

Our Reasoning

Having executed a great deal of shopper work with WordPress, each ourselves and our purchasers have been actually sad with the complexity and price of plugins within the eCommerce house. These two elements prevented some purchasers from exploring new alternatives with WordPress and taking steps ahead to altering their lives. We needed to simplify the entire eCommerce course of in addition to provide decrease value choices in order that anybody may partake. We additionally believed that we may do a greater job with consumer on-boarding, innovating, creating new performance and customer support requests. So, we determined to construct our WPMerchant eCommerce plugin.

The WordPress Plugin Submission Course of

Beneath, we break the method down into its simplest elements in order that anybody can partake on this plugin creation journey. We additionally current these steps within the order that we want we had taken after we determined to create our plugin!

1. Learn the Pointers.

Save your self money and time by studying the detailed guidelines earlier than creating and submitting your plugin. Just remember to’re in compliance with all of those guidelines. A few of these guidelines embody:

  • Ensuring your plugin is GPL suitable
  • Requiring consumer consent earlier than storing consumer info
  • Not spamming customers
  • Not together with obfuscated code
  • Not doing something that’s unlawful or morally offensive
  • Not embedding exterior hyperlinks on the general public web site

2. Test the Plugin Identify within the WordPress Listing.

Go to wordpress.org/plugins and enter your required plugin identify into the “Search plugins…” enter.

WordPress Plugin Search

If no plugins exist with that identify, there’s nonetheless an opportunity plugin has been submitted beneath that identify and the consumer simply hasn’t submitted their first Subversion commit; so don’t get too excited. You’ll wish to submit your plugin as quickly as potential with the intention to assure that you just get the identify. If the plugin identify does exist, we’re actually sorry; that downright sucks. You’ll have to brainstorm to get a brand new one.

three. Create a Plugin That Works.

We created our plugin utilizing the WordPress Plugin BoilerPlate framework (http://wppb.io/). It’s a good way to stand up and working quick with a stable basis.

SitePoint has a collection of articles that discover the plugin growth course of with the WordPress Plugin Boilerplate.
1. Velocity up Improvement Utilizing the WordPress Plugin Boilerplate is the primary within the collection and it offers you understanding of the aim behind the completely different recordsdata in WPPB.
2. The second article within the collection walks you thru making a plugin with WPPB and creating an choices web page with completely different fields that you should use all through your plugin.
three. Half Three walks you thru implementing the general public going through performance of the demo plugin.

After creating our plugin, we needed to replace the code and take a look at via all the performance numerous instances in order that all the completely different items and elements labored within the actual manner that we needed it to.

four. Validate the Readme file.

The ReadMe file is used to populate your plugin’s WordPress Plugin Listing web page. When you actually wish to make your plugin web page stand out, Jérémy Heleine wrote an awesome article on Creating Superior WordPress.org Pages to your Plugin. To present you a basic overview, you need to enter in your plugin identify, contributors (WordPress writer IDs), donate hyperlink, tags, the WordPress model that’s required and the WordPress model the plugin has been examined on, license (it have to be GPL) and a brief description of your plugin. For the tags, we recommend selecting tags based mostly on these listed in a competing plugin and well-liked tags which are related to your plugin. You will discover tags from competing plugins by taking a look at their listing web page and scrolling to the underside of their web page or by testing their readme.txt file.

After including that info, you need to add a principal description, set up directions, regularly requested questions and screenshots of your plugin. Ensure that to incorporate the screenshots, banner and icon in your plugin’s belongings listing. The extra screenshots the higher. When you’re glad together with your readme file, run it via the ReadMe Validator. Our readme.txt handed with flying colours (aren’t we particular!):

WordPress README.txt

5. Submit Your Plugin for Evaluation.

When you’ve executed all the above, it’s time to submit your plugin for guide evaluate.

It’s essential create a WordPress account first.

WordPress Register Form

Then, go to https://wordpress.org/plugins/add/

Add WordPress Plugin Form

Add your plugin identify in addition to an outline of your plugin. For the plugin URL, you should compress your plugin recordsdata and add your plugin.zip file to your web site or to an internet site that you’ve entry to. It is best to be capable to add the compressed file to Dropbox or Google Drive and add a public hyperlink to the plugin zip file.

Alternatively, you’ll be able to add it to an internet site of your selection.

6. Ready for Approval.

All WordPress Plugin Listing plugins are manually reviewed, and in response to WordPress, you need to hear again “inside some vaguely outlined period of time”. This isn’t very useful. Nevertheless, it took about eight hours for WPMerchant to be reviewed and permitted.

WordPress pending approval

7. Approval.

You simply heard again from WordPress and so they let you already know that your plugin was permitted (woot woot!). We did somewhat dance after getting this e-mail!

WordPress approval email

eight. Retailer Your Plugin within the WordPress Subversion Repository.

Subversion is a model management instrument that lets you observe all the “modifications [made to your plugin] to be able to return and have a look at previous variations or revisions later if you happen to ever have to”. When you’re accustomed to Git (one other model management system), you’ll decide this up in a short time.

Now that your plugin has been permitted, it’s time to retailer a duplicate in your WordPress Subversion repository. This repository is the place your plugin recordsdata are saved. Anybody can get a duplicate of your plugin recordsdata from the repository, however the contributors listed in your readme file are the one ones that may make modifications to your plugin’s repository.

We have now two units of directions for storing your plugin within the WordPress Subversion repository; one for these utilizing a Mac and one other for these utilizing a Home windows. We begin with the Mac directions beneath.

On a Mac:

We’re going to be storing your plugin within the WordPress Subversion repository utilizing the command line. Open up your Terminal utility. Discover the dad or mum listing the place you need your plugin to reside.

  • Use the cd ‘listing identify’ command to open a listing.
  • Use the cd .. command to maneuver out of the present listing and into its dad or mum listing.
  • Use the ls -a command to checklist all the recordsdata and directories within the present listing.

If you’ve navigated to the dad or mum listing, run the command beneath in your terminal window (svn is brief for Subversion and co is brief for checkout).

Checkout WordPress Repository Using SVN

This command provides your entire central WordPress Subversion repository’s recordsdata into your native repository. An vital be aware, be sure to interchange https://plugins.svn.wordpress.org/wpmerchant with the URL that’s offered in your plugin approval e-mail (you’ll be able to see our repository’s URL within the e-mail above); it must be within the format of https://plugins.svn.wordpress.org/your-plugin-name. And, change wpmerchant on the finish of the command with what you want to identify the listing (we simply went with the identify of our plugin).

You’ll get a response asking the next:

(R)eject, settle for (t)emporarily or settle for (p)ermanently? 

Kind in t or p and hit Enter. Then, you’ll obtain the message beneath. This means that thewpmerchant listing was created in your pc and the tags, belongings, trunk and branches directories have been added throughout the wpmerchant Subversion repository listing.

A    wpmerchant/tags
A    wpmerchant/belongings
A    wpmerchant/trunk
A    wpmerchant/branches
Checked out revision 111111.

Place your entire plugin recordsdata within the trunk listing. Now that you’ve your plugin recordsdata within the trunk listing, you should add these recordsdata to your Subversion repository in order that they are often tracked. You are able to do this by working the terminal command beneath.

WordPress svn add trunk

You then have to push the modifications made to your native repository to the central WordPress repository by working the next command in your terminal window.

WordPress first commit svn

You’ll have to enter your pc’s logged in username and password.

Then, you’ll be requested to your WordPress username and password.

As soon as these are credentials are offered, your plugin’s recordsdata can be transferred to the WordPress central repository. A Transmitting File Information message can be displayed and when full, a Dedicated revision message can be displayed.

WordPress SVN Commit Complete

DONE! It is best to get an e-mail from WordPress explaining the brand new commit. Now, let’s go checkout our WordPress Plugin Listing Web page.

WordPress Plugin Directory Page Without Banner

As you’ll be able to see, ours doesn’t embody the banner on the prime. It additionally doesn’t include the screenshots that we needed to be proven within the screenshots part. We actually need that banner and people screenshots – what did we do improper? We didn’t add our pictures to the belongings listing (that may be a sibling of the trunk listing). Just remember to place your belongings pictures in that listing. Then, run the next terminal command:

SVN Add Assets

Now, you should commit the change to the central repository.

SVN Assets Commit

Try your WordPress Plugin Listing web page now and you need to see pictures. Yay, we do!!

WordPress plugin directory page with banner

If you’re creating your plugin on a number of computer systems or with a number of contributors, be sure to run the replace command (seen beneath) earlier than committing any modifications. This pulls the modifications that exist within the central WordPress repository into your native plugin repository.

WordPress svn up

On a PC:

In an effort to publish your plugin on a Home windows machine, you should begin off by downloading a suitable model of the Subversion shopper, Tortoise SVN is a well-liked selection. As soon as the obtain is full, double click on and try to be proven step one of the Setup Wizard.

tortoise svn step 1

Click on the Subsequent button.

tortoise svn step 3

Comply with the Phrases and Circumstances after which click on the Subsequent button.

Setup Wizard Tortoise SVN Custom

If you wish to set up the command line instruments, click on on command line shopper instruments and choose ‘Will probably be put in on native onerous drive.’ Both manner although, click on the Subsequent button.

tortoise svn step 5

Click on the Set up button.

tortoise svn step 6

Click on the End button to finish the set up. Superior! Since that junk is all executed, we get to the enjoyable a part of truly working with Subversion (SVN). Open up Home windows Explorer. Navigate to the listing you need your WordPress SVN repository to reside in, click on on that listing after which proper click on on that listing icon.

tortoise svn checkout 1

Click on on the SVN Checkout drop down menu choice.

tortoise svn checkout 2

Enter the URL of the repository into the sector; have a look at your WordPress approval e-mail to seek out that URL. Yours will seemingly be within the format of https://plugins.svn.wordpress.org/your-plugin-name. Click on the OK button.

tortoise-svn-checkout-done

The screenshot above confirms that your checkout was accomplished. Which means all the recordsdata and directories that exist within the WordPress central repository have been downloaded onto your pc, into the listing that you just specified.

The listing that you just selected ought to now maintain belongings, trunk, branches and tags directories. It’s essential add your entire plugin’s recordsdata to the newly added trunk listing. Then, you should open up Home windows Explorer, click on in your SVN repository listing icon, and proper click on on that listing icon.

tortoise svn commit

Click on on the SVN Commit choice. This subsequent screenshot exhibits the completely different recordsdata which were added and modified in your SVN repository. Ensure that to solely verify bins subsequent to the recordsdata that you just wish to be tracked within the repository. It is best to seemingly verify all the checkboxes to ensure that your entire plugin recordsdata to be added to the WordPress central repository.

tortoise svn commit 4

Click on on the OK button. Now, your entire modified and newly added recordsdata ought to exist within the central WordPress SVN repository, in addition to in your native machine. When you’re engaged on a number of computer systems, be sure to run the SVN Replace operate to sync your native repository with the WordPress central repository. Do that by utilizing Home windows Explorer to seek out your SVN repository listing, click on on that listing, after which proper click on on that listing icon.

tortoise svn update

Click on on the SVN Replace choice. As described beforehand, this makes certain that your copy of the repository is updated with the central WordPress repository.

Questions?

That’s all she (or he on this case) wrote! Tell us you probably have any questions/enhancements that we will make, we’d love to listen to from you!