这是一个有点自相矛盾的题目,既然都会自己写插件了,还会搞不定提交这等小问题吗?-____- 不过这其中的过程其实并非那么一目了然,还是把我摸索的结果与大家分享吧。

这是向 WordPress 官网提交插件的步骤,提交主题的过程应该与此大体类似,也可以参考。

一、为什么要向 WordPress 官网提交插件?

1,向Wordpress 官网,也就是 wordpress.org,提交插件之后,就可以在官网插件目录中浏览到,增加了插件曝光的机会,可以让更多的人看到,安装也更为方便。

2,Wordpress 的官方插件库不仅是个目录,而且提供了存放插件的空间,大小、流量似乎都无限制。免得放在自己的空间,被人链了几下就把流量用光了。

3,wordpress.org 还提供了版本控制 subversion,控制版本很方便。

4,把插件发布到 WordPress 官方插件目录之后,还可以统计追踪插件下载量、让用户评论和打分等等,让插件作者能够心中有数。

二、提出申请

首先要在 http://wordpress.org/extend/plugins/add/  填表申请,等待人工审核通过之后,才能上传自己的插件。

表格很简单,只要填插件的名字和简要描述就可以了(当然,要用英文)。插件的名字是以后不能改的,所以请想好。描述以后可以改,所以可以随便写。我就写了一句话。Plugin URL 是不必填的,我填了本博客关于这个插件的页面 https://myfairland.net-utf8-excerpt/,上面全是中文,估计他们也看不懂,所以这个关系不大。

审核似乎极容易通过。提交申请之后,大概一天之内就会收到 wordpress.org 发来的 email,告诉你审核通过了,信中还附有几个有用的 URL。

三、上传文件(暨 TortoiseSVN 简要教程 -__-)

WordPress 官网有如何上传插件的帮助(http://wordpress.org/extend/plugins/about/svn/),但该文是以 Linux 用户为例,那么 Windows 用户该怎么做呢?那里不让人直接在浏览器里上传文件,必须用 subversion 软件。如果你很熟悉 subversion 的使用,可以粗略地看看这一步。如果不熟悉,请详细地往下读。

1,Windows 下有不少提供 subversion 功能的软件,推荐 TortoiseSVN。请自行搜索 TortoiseSVN 并下载安装,重启电脑。

2,在自己的电脑里新建一个目录,用来和 wordpress.org 上的插件目录同步。比如我建的目录是 E:\SVN\wordpress\test\wp-utf8-excerpt\。

3,在 E:\SVN\wordpress\test\wp-utf8-excerpt\ 文件夹上点右键,可以看到弹出的右键菜单里多了几个 TortoiseSVN 的命令。点击其中的 SVN Checkout。

61

4,在弹出的窗口中,URL of repository 是服务器的地址,这个地址在 wordpress.org 发来的 email 中有。Checkout directory 是本地电脑上的地址,软件会自动填好。其他设置不用改,点 OK 确定。

62

5,这时软件就会向服务器发送请求,把服务器上的东西下载下来。因为这时候我们还没上传任何东西,所以下载下来的只是几个空的目录结构。这些文件夹的图标上都打着绿色的勾,表示本地和服务器端是同步的。

63

6,把插件文件复制到 trunk 文件夹里。注意不要压缩打包,复制原文件就可以了。Wordpress 官网会自动生成压缩包供用户下载的。

选中这些文件,点右键,在弹出的菜单中选择 TortoiseSVN –> Add。

64

7,Add 之后,这些文件的图标上会出现一个加号,但这时只是给这些文件做了标记,还没有传到服务器上。

65

8,为了把文件实际传到服务器上,需要在 trunk 文件夹上点右键,选择 SVN Commit。

 66

9,弹出的窗口中,最大的那块文本框是供你写 log 的,如这次上传了什么文件,做了哪些修改等。这个 log 一定要填,不然就会无法上传,我开始就是因为这个没填而老是失败。

67

10,之后会要求输入用户名和密码。注意,这里要填的是 wordpress.org 的帐号密码,不是 wordpress.com 的帐户密码,这两者是不同的。

你可能已经注意到了,只有上传需要输入用户名密码,下载是不需要的,任何人都可以下载。

11,这时打开 WordPress 官网提供的插件地址 http://wordpress.org/extend/plugins/wp-utf8-excerpt/ 可以看到已经上传成功,可供用户下载了。

TortoiseSVN 使用方法小提示:初次使用是 SVN Checkout,之后,从服务器下载是 SVN Update,往服务器上传是 SVN Commit。以后要对插件做修改的话,在原文件上修改,然后重新 Commit 就可以。

四、设定插件的其他信息

关于插件的其他一些信息,比如适用版本、安装说明、FAQ、截图等等是在 readme.txt 文件中设定的。官网会自动从这个文件中读取内容来生成插件页面的信息。 http://wordpress.org/extend/plugins/about/readme.txt 是对 readme 文件的详细说明,它本身也是一个范例文件。这里还有一个验证器,可以检查 readme 文件是否符合要求。编辑好 readme 文件并上传之后,稍等(官网说是15分钟之内)即可看到官网的插件页面随之改变。

还有一些插件信息,如插件作者、插件主页等是在插件本身的 php 文件头部定义的,相信插件作者应该很熟悉这一点。同类信息却要在两处设置,似乎有些麻烦。也许 WordPress 以后会把它们合并成一处吧。

五、版本控制

如果你的插件经常修改、升级,需要维护一个开发版,同时还要有个稳定版供用户下载使用,那么:

1,把不断修改的开发版文件放在 trunk 目录下,并在trunk 目录下的 readme.txt 中写上一句

Stable tag: 1.0

这个 1.0 是插件稳定版的版本号,可自行修改。

2,在 tags 目录下建立以该版本号为名的子目录,并把稳定版的文件放在该子目录中。其路径大体如此:

tags/1.0/my-plugin.php

3,把稳定版的 readme.txt 文件也放在该以版本号为名的子目录下。官网插件目录中显示的信息将以这里的文件为准。默认提供给用户下载的也是这个子目录下面的文件。

4,在这种情况下,trunk 目录下的 readme.txt 的主要作用就是告诉系统哪个是稳定版。

如果不需要维护这么多版本,trunk 目录下直接放稳定版即可,readme.txt 中 Stable tag 这项不写或者写成“trunk”,系统都会理解 trunk 目录就是稳定版所在地。