IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    使用 WP-CLI 加速 WordPress 开发

    PCDotFan发表于 2017-03-20 02:00:28
    love 0

      WP-CLI 对于 WordPress 开发者和高级用户来说,是一个超有用的节省时间利器哦。不过,如果你之前从未接触过这样的命令行包,刚开始会有点吓人……

      Talk is cheap,所以我将带你去真正体验一下 WP-CLI 使用的全过程。

      原作者:@WPMUDEV,禁止转载。

     

    开始之前

      使用 WP-CLI 要做的第一件事应该是为它找一个合适的主机……国内的许多主机商都没有开放相应权限给用户(例 SSH),并且它只能安装在 类 UNIX 系统下(Linux / macOS)——这样使得 WP-CLI 的使用环境大概只能在 VPS 或本地进行。

    站点设置

    安装 WordPress

      和以往不同,这次我们不能再从官网下载个压缩包就直接扔到网站上。WP-CLI 中的 WP Core 函数可供用户下载、安装、升级 WordPress 核心。

      例如,我准备将新网站的全部内容都保存在本地的 ~/cli-test/ 这个目录下,那么在安装完 WP-CLI 后我可以执行:

    wp core download

      下一步当然是创建数据库咯。phpMyAdmin 抑或是使用 WP Core 提供的命令,只要达到目的即可,不再赘述。

    使用 WP Core 函数创建数据库(可选)

    wp core config --dbname=database_name --dbuser=database_user --dbpass=user_password --dbhost=localhost --dbprefix=wp_

    替代 5 分钟安装页面

      最后一步就是运行 WordPress 安装程序,我们来试试使用 WP Core 命令进行?

    wp core install --url=www.mywpku.com --title=WP酷 --admin_user=PCDotFan --admin_password=$tron9Pa55w0rd --admin_email=pc@edu.ax

      使用命令行操作的一大好处就是可以像批处理一样构建网站。例如运营站群就需要给多个网站主机安装程序,现在只需要考虑如何为它们执行一行命令,岂不美哉?

    有关 WP Core 的相关命令

    • wp core version
       : 查看 WordPress 的当前版本
    • wp core multisite-install
       : 为 WordPress 设置多站点网络(WPMU)
    • wp core update
       : 升级 WordPress 核心
    • wp core update-db
       : 更新 WordPress 数据库(往往在上一行代码之后执行)

     

    安装主题

      执行 

    wp theme list
     后将会显示一个包含有「已安装主题」、「状态」、「版本号」、「是否有可用更新」的总表:

    # 从 WordPress.org 安装 tortuga 主题 (https://wordpress.org/themes/tortuga/)
    wp theme install tortuga
    
    # 从本地安装主题
    wp theme install /Users/pcdotfan/Desktop/tortuga.zip
    
    # 从 URL 安装主题
    wp theme install https://github.com/jpen365/five-hacks-for-twenty-seventeen/archive/1.0.zip

      就这么轻松!

     

    安装插件

      

    wp plugin list
     和安装主题的方法一样,仅仅是将
    theme
      更改为
    plugin
      而已。我们同样也通过实例来了解一下使用 WP-CLI 安装插件(Smush 和 Custom Sidebars plugins)的全过程:

    wp plugin search smush

      此条命令将返回一个从 WordPress.org 搜索得来的「smush」列表:


      现在我需要安装 WP Smushit! 这个插件(别名是 wp-smushit)。OK,我再找找想要的 Custom Sidebars 插件。


      找到了,custom-sidebars 就是插件的别名。只需要一行命令即可同时安装两款插件:

    wp plugin install wp-smushit custom-sidebars
    

      稍等几秒后,它们就安静地躺在后台啦!

     

    站点维护

     

    令 WordPress 降级至前一版本

      说是降级,实际上 WP-CLI 实现了「恢复至指定版本」的功能。即使 WordPress 向下兼容性做得很到位,但是也仍不能排除有例外的情况。来看下命令:

    wp core update --version=4.6.1 --force

      倘若你的 WordPress 正处于 4.7 版本,这一操作将直接回退到 4.6 版本的核心内容(不包括主题、插件)并删除任何 WordPress 4.7 新增的文件。注意:记得备份。

    查询 & 替换

      WP-CLI 的查询 & 替换功能是一个亮点,当我们正准备给网站搬家(更换域名、添加 HTTPS 等)时显得尤为方便。

    # Check number of times string will be replaced
    wp search-replace "http://olddomain.com" "http://newdomain" --dry-run
    
    # Replace old domain with new domain
    wp search-replace "http://olddomain.com" "http://newdomain.com"
    
    # Update URL to https
    wp search-replace "http://example.com" "https://example.com"

      默认情况下,WP-CLI 只会查找/替换 WordPress 自有核心的数据表。不过我们也有其他办法让它搜索其他的表:

    # Search and replace a custom table and core table
    wp search and replace "old-string" "new-string" wp_custom_table wp_posts
    
    # Search and replace all tables, including custom tables
    wp search and replace "old-string" "new-string" --all-tables

     

      是不是省了好多 SQL 命令?

      需要注意的是,你应该时刻注意自己的数据库是否有近期备份——WP-CLI 的操作实际上就是对数据库进行增删改查,且不可回退。不过还好,WP-CLI 有一项功能可以让你避免做出傻事—— 所提供的 –dry-run 选项类似于一个沙箱,在执行完命令后并不会真的操作数据库——而是返回一张带有更改位置及内容的表。待确定无误后再把 –dry-run 选项去掉,这样就可以确保任何修改都在可控范围内。



沪ICP备19023445号-2号
友情链接