在同一节点应用程序中使用WordPress和WooCommerce REST API

时间:2017-08-23 作者:ken.dunnington

我正在编写一个小型实用程序应用程序,将第三方API连接到WooCommerce商店(实际上,它是多站点的,但实际上并不相关),以便更新客户记录。WooCommerce APIdocs 声明role 属性是只读的,但我需要更新角色,以便在前端启用基于角色的定价。看起来我可以使用核心WordPress编辑角色API, 但我正在使用wc-api-node, 这是WooCommerce API的节点包装器。在创建/更新客户记录后,我是否应该使用单独的包装器和/或方法访问核心WordPress API,或者这是我可以处理的事情woocommerce_rest_insert_customer 行动(注意:我主要是一名node/JS开发人员,因此对WordPress或WooCommerce没有太多经验。)

我也在考虑是否可以制作自己的插件,并使用WordPress cron系统与第三方API进行对话,但我不愿意这样做。

1 个回复
SO网友:ken.dunnington

我想我会把我的解决方案分享给任何研究类似问题的人。最后我换成了node-wpapi 以及使用REST自动发现来启用WooCommerce&;来自单个库的WordPress API。可以这样做:

const wpapi = require(\'wpapi\')

let wp = new wpapi({
  endpoint: \'http://your.wp.site/wp-json/\',
  username: \'user\',
  password: \'pass\',
  auth: true,
  routes: routes
})
let woo = wp.namespace(\'wc/v2\')
在哪里routes 是REST API路由的JSON表示请参见here 有关引导API包装的信息

然后,我可以同时使用这两个API

wp.users()
  .search(\'foo\') // Search by (for example) username
  .param(\'context\', \'edit\') // Get additional fields
  .then(result => {
    let user = result[0]
    woo.customers().id(user.id) // Get WooCommerce specific fields
    .then(customer => {
      console.log(\'woo.customer\', customer)
    })
  })

结束
在同一节点应用程序中使用WordPress和WooCommerce REST API - 小码农CODE - 行之有效找到问题解决它

在同一节点应用程序中使用WordPress和WooCommerce REST API

时间:2017-08-23 作者:ken.dunnington

我正在编写一个小型实用程序应用程序,将第三方API连接到WooCommerce商店(实际上,它是多站点的,但实际上并不相关),以便更新客户记录。WooCommerce APIdocs 声明role 属性是只读的,但我需要更新角色,以便在前端启用基于角色的定价。看起来我可以使用核心WordPress编辑角色API, 但我正在使用wc-api-node, 这是WooCommerce API的节点包装器。在创建/更新客户记录后,我是否应该使用单独的包装器和/或方法访问核心WordPress API,或者这是我可以处理的事情woocommerce_rest_insert_customer 行动(注意:我主要是一名node/JS开发人员,因此对WordPress或WooCommerce没有太多经验。)

我也在考虑是否可以制作自己的插件,并使用WordPress cron系统与第三方API进行对话,但我不愿意这样做。

1 个回复
SO网友:ken.dunnington

我想我会把我的解决方案分享给任何研究类似问题的人。最后我换成了node-wpapi 以及使用REST自动发现来启用WooCommerce&;来自单个库的WordPress API。可以这样做:

const wpapi = require(\'wpapi\')

let wp = new wpapi({
  endpoint: \'http://your.wp.site/wp-json/\',
  username: \'user\',
  password: \'pass\',
  auth: true,
  routes: routes
})
let woo = wp.namespace(\'wc/v2\')
在哪里routes 是REST API路由的JSON表示请参见here 有关引导API包装的信息

然后,我可以同时使用这两个API

wp.users()
  .search(\'foo\') // Search by (for example) username
  .param(\'context\', \'edit\') // Get additional fields
  .then(result => {
    let user = result[0]
    woo.customers().id(user.id) // Get WooCommerce specific fields
    .then(customer => {
      console.log(\'woo.customer\', customer)
    })
  })

相关推荐

WP管理员缺少图标、大量的JavaScript错误,但仅当SCRIPT_DEBUG为FALSE时

我可以访问一台Linux/Apache服务器,在那里我试图部署WordPress。为了避免这个错误,我用默认的2017主题和所有禁用的插件对其进行了测试。当我以管理员身份登录到任何wp admin页面时,左侧导航中的大多数图标都会丢失,选中的复选框没有任何复选框(例如),浏览器控制台会充满JavaScript错误。例如,在仪表板页面上,没有任何图标可见,错误控制台的内容如下:Uncaught TypeError: a.widget is not a function at load-scripts