gpt4 book ai didi

node.js - 如何使用 node-wp-cli 运行自定义 wp-cli 命令?

转载 作者:太空宇宙 更新时间:2023-11-04 02:20:22 24 4
gpt4 key购买 nike

我正在使用node-wp-cli从 Node.js 运行 WP-cli 命令。所有内置 WP-cli 命令都可以完美运行,但我在尝试运行自定义 WP-cli 命令时卡住了。

有没有办法从node-wp-cli运行我的自定义WP-Cli命令wp MyRegisteredCommand SubCommand?像:

WP.MyRegisteredCommand.SubCommand(function(err,res){ //get response
console.log(res);
});

最佳答案

这相对简单,但需要一些调整......

Node wp-cli 使用 wp cli cmd-dump 来识别可用命令,但该命令在加载 WordPress 之前运行,因此它只会识别内置命令。

简而言之,调整:

  • 参见 WP.js,第 schema(function(err,schema){... 行。您需要了解 schema 的结构,因此只需运行一些内置命令并在此处放置断点即可。
  • 按照上面的架构结构实现命令的架构。它看起来像这样:

    my_commands.js:

    var schema = {
    mycmd: {
    mysubcmd: {
    args: [ {
    arg: 'arg1',
    required: true,
    type: 'args'
    } ],
    endpoint: true,
    options: {
    opt1: {
    required: true,
    type: 'param'
    },
    flag1: {
    required: false,
    type: 'flag'
    },
    }
    },
    use: 'wp mycmd mysubcmd'
    }
    }

    module.exports.schema = schema;
  • 修改WP.js:

    var mySchema = require('my_commands.js').schema;

    ...

    schema(function(err,schema){

    schema = _.merge(schema, mySchema); // this line added

    var toMerge = function mapSchema(schema){

关于node.js - 如何使用 node-wp-cli 运行自定义 wp-cli 命令?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33738029/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com