我已经生成了一个消费者密钥和消费者秘密.该网站已安装SSL.我还安装了JSON和REST服务所需的插件.这是网址的样子:
https://<url>/wp-json/wc/v1/products
Run Code Online (Sandbox Code Playgroud)
当我试图通过使用Instagram插件(Chrome插件)使用Basic Auth获取(获取)产品详细信息时,我得到一个JSON响应,如:
{
"code": "woocommerce_rest_cannot_view",
"message": "Sorry, you cannot list resources.",
"data": {
"status": 401
}
}
Run Code Online (Sandbox Code Playgroud)
我同时拥有与Consumer键对应的READ和WRITE权限.
wordpress woocommerce wordpress-rest-api woocommerce-rest-api
我正在尝试使用此页面文档中的示例代码通过Rails 4应用程序中的其余api创建优惠券:https : //woocommerce.github.io/woocommerce-rest-api-docs/?ruby#create-优惠券
这是我正在使用的代码:
data = {
code: "10off",
discount_type: "percent",
amount: "10",
individual_use: true,
exclude_sale_items: true,
minimum_amount: "100.00"
}
woocommerce.post("coupons", data).parsed_response
Run Code Online (Sandbox Code Playgroud)
我希望它从API返回成功的响应,而不是 {"errors"=>[{"code"=>"woocommerce_api_missing_coupon_data", "message"=>"No coupon data specified to create coupon"}]}
ruby woocommerce ruby-on-rails-4 wordpress-rest-api woocommerce-rest-api
我正在为在 wp-woocommerce 中构建的电子商务网站开发 android 应用程序。我真的不太了解wp。我阅读了http://woothemes.github.io/woocommerce-rest-api-docs/并开发了几乎所有的 android 应用程序。但我无法找到一种方法来通过 rest api 验证客户的用户名和密码。我只想传递用户名和密码,并期望结果为通过或失败。
在此先感谢您的帮助。
我遵循了几个示例,但似乎无法注册自定义端点。我正在创建一个自定义插件并想注册一个自定义端点。这是我的代码:
add_action( 'init', 'setup_init' );
function setup_init() {
add_action( 'rest_api_init', 'wpc_register_wp_api_endpoints' );
function wpc_register_wp_api_endpoints() {
register_rest_route( 'setup', '/client/menu', array(
'methods' => 'GET',
'callback' => 'menu_setup',
));
}
function menu_setup($request_data){
return 'hello world';
}
}
Run Code Online (Sandbox Code Playgroud)
我访问 mysite.com/setup/client/menu 时出现页面未找到错误。然后我检查 mysite.com/wp-json/wp/v2/,但我没有看到我的路线/终点已注册。我的插件已启用。难道我做错了什么?
我正在研究 Wp Rest API。我想从 WordPress 网站检索帖子,结果显示在另一个 PHP 网站中。我创建了一个休息网址“ http://sitename.com/wp-json/wp/v2/posts ”这样来获取帖子。此请求以 html 格式显示数据,但不以 JSON 格式显示数据。我在 PostMan 应用程序中测试了两个不同的 URL。如何从 WordPress 站点将 API 响应转换为 JSON 格式而不是 html。
这是我的 URL 数据
这是第三方 URL 数据
我正在使用以下内容来获取帖子
http://demo.wp-api.org/wp-json/wp/v2/posts
默认情况下,这给了我 10 个帖子,这是在文档中提到的。
但我想要所有帖子而不必跟踪分页。
那可能吗?
如果没有,有没有办法运行 JavaScript 循环来获取所有帖子?
谢谢。
我正在尝试使用 REST API 显示帖子,并且我想根据它们在管理菜单中的位置按菜单顺序显示它们。
我安装了一个插件,允许我将帖子移动到管理员中的任何位置。我知道使用 WordPress 以正常方式查询帖子有一个 orderby: menu_order 选项,它可以完成我正在寻找的操作,但我无法使用 REST API 弄清楚它。
我的 REST API 如下所示:
https://example.com/wp-json/wp/v2/qd_leadership?_embed&per_page=100&orderby=menu_order
Run Code Online (Sandbox Code Playgroud)
所以我已经尝试过了,但这不起作用。它说 menu_order 不是一个选项。我还在这里看到了一个帖子:
按 WordPress (REST) 帖子在管理员中出现的顺序查询它们
那有一个类似的问题。该帖子的唯一答案是没有任何 orderby 参数,并且应该按菜单顺序显示它们,但这对我不起作用。所以我很困惑如何按菜单顺序从 REST API 中订购帖子?
我正在尝试在我们的域下的子文件夹中设置多个 WordPress 站点(即不是多站点),但我在配置 REST API 端点时遇到困难。例如,这个端点工作正常:
https://example.com/site1/?rest_route=/wp/v2/posts
Run Code Online (Sandbox Code Playgroud)
但是这个端点给出了 404:
https://example.com/site1/wp-json/wp/v2/posts
Run Code Online (Sandbox Code Playgroud)
我尝试在 nginx 配置中使用以下规则将失败的 url 重写为工作 url:
location /site1/wp-json {
rewrite ^/site1/wp-json(.*)$ /site1/?rest_route=$1;
}
location /site1/ {
try_files $uri $uri/ /site1/index.php$is_args$args;
}
Run Code Online (Sandbox Code Playgroud)
我在WordPress 文档或nginx wiki中看不到对 wp-json 的任何特殊处理。我在这里缺少什么?该网站的永久链接设置为Numeric( https://example.com/site1/archives/123如果这可能起作用,
编辑后的完整配置文件的要点和配置语法 lints 正常:
nginx -c /etc/nginx/nginx.conf -t
Run Code Online (Sandbox Code Playgroud)
nginx:配置文件/etc/nginx/nginx.conf语法正确
nginx:配置文件/etc/nginx/nginx.conf测试成功
注册功能必须去哪里?( register_rest_route())
有任何文件可以澄清这一点吗?
官方文档中没有提到: https://developer.wordpress.org/rest-api/extending-the-rest-api/routes-and-endpoints/
同样,端点函数必须存储在哪里?注册函数只是命名它,而不指定它的路径。
例如,你可以这样做:
register_rest_route) 位于主插件文件中(例如 \wp-content\plugins\example\example.php)如果是这样,怎么办?
以下链接似乎尝试执行此操作,但未指定这些属性(例如 \wp-content\plugins\example\example.php)
php wordpress routes wordpress-rest-api wordpress-plugin-creation
我有一个问题register_meta(),
我正在尝试为我的自定义帖子类型创建数组元并将其添加到 REST API,但什么也没有,这是我的代码:
function thefuturmeta_register_portfolio_meta() {
register_meta( 'post', '_thefuturmeta_port_add_gallery', array(
'object_subtype' => '_themename_portfolio',
'show_in_rest' => true,
'type' => 'array',
'single' => true,
'sanitize_callback' => '',
'auth_callback' => function() {
return current_user_can( 'edit_posts' );
}
) );
}
add_action('init', 'thefuturmeta_register_portfolio_meta');
Run Code Online (Sandbox Code Playgroud)
我在 REST API 中看不到这个元数据。如果我将元类型更改为字符串或布尔值或数字,它将显示。
我究竟做错了什么?
提前致谢。