A few days ago, I was very happy to officially release a plugin for WordPress into the WP repository. The experience was an interesting one, but the documentation on the process was, for the most part, extremely helpful.
I began by registering my plugin with WordPress on Jan. 11, 2011. Almost a week later, I received approval to add my plugin to the repository. I then checked out the empty SVN repository using TortoiseSVN for Windows, created the appropriate subversion directories, added my previous versions to the “tags” directory and added my current version to the “trunk” directory. I validated my readme file through the WordPress plugin readme validator and then committed my changes to the repository.
A few minutes later, the files were available for download from the WordPress website. I discovered a minor issue with the readme validator once my plugin became publicly available. Although the readme validator handles fancy quotes and en and em dashes just fine, they are not encoded properly when actually interpreted by the WordPress website. Therefore, my readme file (which I basically just copied from the WordPress website I set up for my plugins), was presented on the WordPress website with a bunch of unrecognizable characters at first.
Regardless, once I modified the readme, performed a minor update to the plugin and committed those new files to the SVN repository, everything appeared to be fixed on the WordPress website.
For those of you that are curious, the plugin allows you to insert a shortcode in WordPress posts and pages, which will then display a list of the files “attached” to that post or page when it is viewed on your website.
Recently, I’ve been doing a lot of projects where clients needed a way to list a bunch of PDF files or Word documents, etc. on a page. Rather than trying to manually maintain the list of files, or developing a custom function to try to read a specific directory’s contents; I thought it made more sense to utilize the built-in “attachment” functionality in WordPress and create a plugin to harness that power.