使用WP-CLI别名远程控制WORDPRESS

在VVV上使用WP-CLI在本地工作

Vary Vagrant Vagrant(VVV)是一个一体化的Vagrant环境,允许开发人员在一个预先配置为与WordPress一起使用的全功能虚拟机上本地工作。VVV是一种设置为WordPress开发配置的本地WordPress环境的相对简单的方法。VVV提供了一个Web服务器,该服务器针对本地计算机上的虚拟机中的WordPress进行了优化。它使用Virtual Box和Vagrant,并需要一些其他依赖项进行安装。 有关安装和功能的更多信息,请参阅VVV存储库。

通过SSH连接

SSH  是Secure Shell的首字母缩写,允许使用公钥/私钥认证在两台服务器之间建立安全连接。出于我们的目的,SSH可用于在本地计算机和远程服务器之间建立安全连接。您需要生成一个ssh密钥对,并将公钥从本地计算机复制到远程环境。这使您可以安全地连接到远程服务器而无需输入密码。

了解有关SSH密钥管理和生成密钥的更多信息。

设置SSH

在我们开始在VVV中使用WP-CLI之前,我们需要创建一种连接到远程WordPress安装的方法。请记住,VVV就像一个完全独立的服务器,即使它在本地系统上运行。只需一点配置即可通过SSH连接到VVV。

SSH配置文件

典型的SSH配置条目如下所示,可能会有比我下面列出的更多选项。

基本SSH配置文件

1
2
3
4
Host your_site
HostName your_site@your_domain.com
User user_name
IdentityFile path_to_private_key

如果您正在使用VVV或使用Vagrant的其他环境,则可以通过运行命令

1
vagrant ssh-config

并将输出复制到SSH配置文件(通常位于

1
~/.ssh/config

Mac或Linux系统上)来生成SSH配置。您将使用

1
Host

运行SSH时的值,命令将如下所示:

1
ssh your_site

。您需要为要连接的每个服务器都有一个SSH主机条目,然后运行WP-CLI命令。

1
vagrant ssh-config

命令输出

1
2
3
4
5
6
7
8
9
10
11
Host default
HostName 127.0.0.1
User vagrant
Port 2200
UserKnownHostsFile /dev/null
StrictHostKeyChecking no
PasswordAuthentication no
IdentityFile /path_to_private_key
IdentitiesOnly yes
LogLevel FATAL
ForwardAgent yes

注意:您可能希望将此更改为your_site或默认为更符合实际网站名称的内容。

专业提示:如果重新启动vagrant实例,Port值可能会更改。如果您的ssh主机无法连接,您可能需要更改ssh配置中的端口号。这可以通过

1
vagrant ssh-config

再次运行生成,注意端口号并更新SSH配置文件中的条目。

WP-CLI别名

WP-CLI具有一个名为别名的功能,允许您通过添加前缀来指定远程WordPress站点以运行命令。例如,您可以从生产站点导出数据库,将其下载到本地计算机,然后从命令行将其导入开发站点。

典型的WP-CLI信息命令

1
wp cli info

以上命令将生成有关当前系统的WP-CLI安装的一般信息。使用Alias,可以在其他服务器上运行相同的命令。

*带有别名@ dev *的WP-CLI info命令

1
wp @dev cli info

在这种情况下,在我设置为VVV开发站点

1
cli info

的远程服务器上执行相同的命令

1
@dev

列出开发服务器上的插件

1
wp @dev plugin list

此命令将显示我在本地开发站点上安装的所有插件。如果为我的生产站点添加另一个别名

1
@prod

,我可以在我的生产服务器上运行命令。
列出生产服务器上的插件

1
wp @prod plugin list

此命令将显示我的生产计算机上的插件列表。这篇文章中的命令只是WP-CLI可以完成的一小部分。有关更多WP-CLI命令,请查看[WP-CLI命令列表](https://developer.wordpress.org/cli/commands/)。

在VVV中配置WP-CLI别名

1
/wp-cli.yml

VVV包含一个名为VVV的文件,这是一个流行的Vagrant环境,用于在本地构建WordPress站点。安装并配置VVV后,可以添加别名,以便通过SSH连接到Vagrant虚拟机并执行命令。使用WP-CLI别名的好处是,当使用别名时,SSH连接会自动发生。您不必通过SSH连接到服务器来运行命令,因为它们可以通过向您要运行的命令添加别名来从本地计算机运行。这可节省时间,并可在多个服务器或环境中使用WP-CLI时简化您的工作流程。

安装程序如下所示:
* wp-cli.yml文件*

1
2
3
4
5
@dev:
ssh: edmund.test
path: /srv/www/edmund
@prod:
ssh: edmund

在上面的配置中,

1
@dev

是您将添加到SSH命令的别名的名称。该

1
ssh:

值是用于远程访问服务器的主机。该

1
path:

值是服务器上安装WordPress的位置。我在上面的示例中包含了第二个别名,用于连接到生产服务器。将

1
@prod

服务器设置为通过最近发布的[SSH网关]以连接到WP

注意:

1
@prod

别名不需要路径,并且在本地

1
~/.ssh/config

文件中完成设置,如上一节中所述。

结论

WP-CLI是一个很棒的工具,它允许您管理和配置WordPress,而无需使用WordPress仪表板。可以从命令行使用WP-CLI,这样可以方便开发人员使用。如果您按照上面的示例进行操作,则应了解如何在VVV和远程服务器上执行WP-CLI命令。WP-CLI别名是优化工作流的有效方法,允许您在远程服务器上使用WP-CLI,而无需在运行命令之前通过SSH连接到服务器。VVV支持在虚拟机上本地运行WordPress,并且内置了WP-CLI Alias支持。

说点什么

500