gpt4 book ai didi

php - 本地服务器上的 WooCommerce Rest API 问题

转载 作者:行者123 更新时间:2023-12-04 17:58:44 34 4
gpt4 key购买 nike

我正在开发一个与 WooCommerce 商店交互的插件,问题是该插件和商店位于同一 WordPress 安装(同一服务器和域)上,并且 WooCommerce Rest API 无法正常工作。我已经问过这个问题了:

WooCommerce API Issue with Authentication Consumer Key is missing

我的问题:有没有办法在没有 Rest API 的情况下直接与 WooCommerce 交互,特别是如果我的插件和 WooCommerce 商店在同一台服务器上?

最佳答案

我终于找到了解决方案,为了在不使用 REST API 的情况下直接访问 WooCommerce API,我首先在这个链接上找到了很棒的代码:

https://wordpress.org/support/topic/programming-question-memory-leak-when-accessing-products

并使用这个很棒的链接文档

http://woocommerce.wp-a2z.org/oik_file/includesapiv2class-wc-api-orders-php/

然后通过在插件文件夹下的 WooCommerce 源代码中导航插件/woocommerce/includes/api

我成功访问了 WooCommerce,这里有一个简单的例子来获取一个类别的产品并使用页码:

//you need to sign in with wordpress admin account to access WooCommerce data
function setupWooCommerce() {
$wooCommercePath = realpath(WP_PLUGIN_DIR . '/woocommerce/woocommerce.php');
require_once $wooCommercePath;

WC()->api->includes();
WC()->api->register_resources(new WC_API_Server( '/' ));

$credentials = [
'user_login' => 'username',
'user_password' => 'password'
];
$user = wp_signon($credentials, false);
wp_set_current_user($user->ID);
}

function getProducts($category, $pageNumber) {
setupWooCommerce();
$products = NULL;
try {
$api = WC()->api->WC_API_Products;
$products = $api->get_products(null, null, array('category' => $category), $pageNumber);
} catch (Exception $e) {
error_log("Caught $e");
}
return $products;
}

关于php - 本地服务器上的 WooCommerce Rest API 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37900138/

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