在WordPress主题或插件中使用 PHP Composer 引入第三方库


Composer 是 PHP 的包管理工具,类似于 Python 的 Pip,Nodejs 的 npm,有了 Composer,我们在PHP项目中使用某个 PHP 类库的时候就方便多了。WordPress 是基于 PHP 开发的,所以理所当然可以使用 Composer 来管理WordPress主题或插件使用的 PHP 类库。

支持 Composer 的 PHP 类库可以在 Packagist.org 上面看到,这是 Composer 的官方仓库。使用某个 PHP 类库之前,现在 Packagist 上面搜索一下,如果 Packagist 上面有,我们就可以使用Composer 安装管理这个类库。

下面我将为大家详细介绍怎么在WordPress主题或插件中使用 Composer 管理 PHP 第三方类库,在下面的介绍中,我们将使用 mailgun-php 这个类库来为大家做演示。

1. 首先,我们需要安装 Composer

使用官方提供的命令安装即可,如果是 Windows 系统,可以下载官方提供的 Composer-Setup.exe 安装包安装。

wpzhiku@ubutnu:~$ curl -sS https://getcomposer.org/installer | php
wpzhiku@ubutnu:~$ sudo mv composer.phar /usr/local/bin/composer

2. 然后添加 Mailgun 为依赖

直接使用 Composer 的 require 命令即可添加我们需要的类库,这个命令帮我们完成了下载类库文件,然后生成自动加载文件。

wpzhiku@ubutnu:~$ cd /path/to/plugin/
wpzhiku@ubutnu:~/path/to/plugin$ composer require mailgun/mailgun-php:~1.7.2

3. 检查 composer.json 文件,看是否添加成功

完成第二步后,我们的 composer.json 配置文件看起来应该是这样的。

{
  "name": "plugin-name/plugin",
  "description": "Your plugin description",
  "keywords": ["wordpress", "plugin", "private"],
  "homepage": "https://longrendev.io/",
  "license": "proprietary",
  "authors": [
    {
      "name": "wpzhiku",
      "email": "wpzhiku@qq.com",
      "homepage": "https://www.wpzhiku.com/"
    }
  ],
  "type": "wordpress-plugin",
  "require": {
    "php": ">=5.3.2",
    "composer/installers": "v1.0.6",
    "mailgun/mailgun-php": "~1.7.2",
    "guzzlehttp/guzzle": "~5.2"
  }
}

4. 通过 Composer 安装 Mailgun

如果我们手动把需要的类库添加到了我们的 composer.json 文件中,需要运行以下命令安装依赖。

wpzhiku@ubutnu:~/path/to/plugin$ composer install

5. 在插件中自动加载 Mailgun 类

PHP 从5.3版本开始支持了名称空间,如果你的 PHP 版本是 5.3 以上的,我们可以这样加载 Mailgun 类,在插件文件的开头写入以下代码。

require 'vendor/autoload.php';
use MailgunMailgun;

当然,我们也可以在WordPress主题的 functions.php 中加入上面的代码,把我们安装的类库引入到我们的主题中。

完成了这一步,我们就可以在插件或者主题中使用 Mailgun 的功能了,怎么样,是不是很方便?

  • 分享:
评论
还没有评论
    发表评论 说点什么