Questions tagged «wp-api»

4
隐藏公开显示隐藏WordPress REST API v2端点
我想开始使用WordPress REST API v2从我的网站查询信息。我注意到,当我直接访问端点URL时,可以公开看到所有数据。我还看到很多教程都提到了测试服务器或本地服务器的使用,而不是现场站点。 我的问题是: 这是否打算在生产现场使用? 允许端点查看任何人是否存在安全风险,例如 /wp-json/wp/v2/users/显示所有注册到该站点的用户? 是否可以仅允许授权用户访问端点? 我想确保我遵循有关安全性的最佳实践,因此任何提示都将有所帮助。该API文档提到的认证,但我不知道如何阻止URL被直接访问。其他人通常如何设置此数据以供外部应用程序访问而又不暴露太多信息?
15 http  wp-api  rest-api 

6
从REST API V2获取WP导航菜单
我正在尝试使用WP REST API v2插件从JSON响应中获取导航菜单。 没有针对REST API v2的导航菜单插件扩展,仅针对V1。 从Codex WordPress帖子类型中,我了解到导航菜单被视为帖子类型。 从Rest API Doc中,这是我们获取以下类型的帖子的方式: GET http://demo.wp-api.org/wp-json/wp/v2/types/<type> 我试图这样得到它: URL : http://localhost/wptest/wp-json/wp/v2/types/nav_menu_item 我收到403错误。 {"code":"rest_cannot_read_type","message":"Cannot view type.","data":{"status":403}} 服务器理解了我的请求,但拒绝提供数据。 问:我该如何解决?

3
如何在自定义路由中访问WP API请求的主体?
我已经在WP API(v2 beta 4)中创建了一个自定义路由来设置站点选项。我正在使用AngularJS进行API调用,由于某种原因,我无法访问请求中发送的数据。这是我到目前为止的内容: gvl.service('gvlOptionService', ['$http', function($http) { this.updateOption = function(option, value) { return $http({ method : 'POST', url : wpAPIdata.gvlapi_base + 'options', data : { "option" : option, "value" : value }, headers : { 'Content-Type': 'application/x-www-form-urlencoded', 'X-WP-Nonce' : wpAPIdata.api_nonce } }) } }]); 这成功发送了请求,发布的数据如下所示: {"option":"siteColor","value":"ff0000"} 该请求成功进入了我的自定义路由和我指定的回调。这是该类中的回调函数: public function …
11 wp-api 

4
获取wp rest API v2中的帖子数并获取所有类别
我想获得我的帖子数。我觉得用 wp-json / wp / v2 / categories?page = 1 >>算是一个好方法。但是使用上述解决方案在速度上不是一杯茶,我不知道如何通过一个电话获得所有类别(如果您知道如果您分享它会很有帮助)。有什么方法/教程/ ...可以让我在主通话中添加帖子数吗?就像这条路线:wp-json / wp / v2 / posts...。
10 rest-api  wp-api 

1
使用REST API上传媒体
使用JSON REST API将媒体上传到WordPress网站时遇到麻烦。 使用以下代码,我可以上传照片,但是没有为他们分配任何信息,甚至没有为名称分配信息-实际上,名称自动成为URL和文件名(不带扩展名)。 $username = "ZX"; $password = "ZX"; $host = 'http://ZX.com/wp-json/wp/v2/media'; $data = json_encode($data); $file = '/Users/xx.png'; $imagedata = file_get_contents($file); $process = curl_init($host); curl_setopt($process, CURLOPT_RETURNTRANSFER, 1); curl_setopt($process, CURLOPT_BINARYTRANSFER, TRUE); curl_setopt($process, CURLOPT_RETURNTRANSFER, TRUE); curl_setopt($process, CURLOPT_TIMEOUT, 50); curl_setopt($process, CURLOPT_USERPWD, $username . ":" . $password); curl_setopt($process, CURLOPT_POSTFIELDS, $data); curl_setopt($process, CURLOPT_HTTPHEADER, array('Content-Type:image/png','Content-Disposition:attachment;filename='.$file)); …
9 php  uploads  media  wp-api  curl 

2
通过多个元键查询WP REST API v2
使用REST API的v2,我想通过多个元键查询一些帖子。使用v1,我能够像这样设置url的格式,&filter[meta_value][month]=12&[meta_value][year]=2015并且可以正常工作(在将元值公开给API之后)。 现在使用v2,我只能通过使用此GitHub线程上列出的方法来使它起作用:https : //github.com/WP-API/WP-API/issues/1599#issuecomment-161166805 基本上,使用以下rest_query_vars过滤器添加了meta字段: add_filter( 'rest_query_vars', 'flux_allow_meta_query' ); function flux_allow_meta_query( $valid_vars ) { $valid_vars = array_merge( $valid_vars, array( 'meta_key', 'meta_value', 'meta_compare' ) ); return $valid_vars; } 这样,我就可以使用url这样的网址来过滤一个元键wp-json/wp/v2/posts?filter[meta_key]=test&filter[meta_value]=on。 但是,听起来对多个元键进行过滤的唯一方法是编写自定义过滤器。有人可以指出我这样做的正确方向吗?

1
通过WP REST JSON API在另一个PHP网站中显示受欢迎的帖子
我需要在同一域下的另一个PHP网站上显示流行和最新的帖子。 例: www.example.com ->主要网站(php,mysql) www.example.com/blog -> WordPress博客 需要在主网站上显示博客的热门近期帖子。 请注意,博客和主要网站使用两个单独的数据库。 我决定为此使用WP REST JSON API插件。现在我有不同的问题。 我使用以下代码检索上周的热门帖子。我真正需要的是通过API调用获取相同的数据。 $args = array( 'date_query' => array( array( 'after' => '1 week ago' ) ), 'posts_per_page' => $recent_posts_count, 'ignore_sticky_posts' => 1, 'meta_key' => 'post_views_count', 'orderby' => 'meta_value_num', 'order' => 'DESC' ); $popularposts = new WP_Query( $args ); …
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.