繁体   English   中英

如何在WordPress中将$ wpdb-> get_results作为json返回?

[英]How do I return $wpdb->get_results as json in WordPress?

我在wordpress中创建了一个名为custom_users的自定义表格,我想通过API访问记录

functions.php

function get_wp_custom_users()
{
    global $wpdb;

    $custom_users = $wpdb->get_results("SELECT * FROM wp_custom_users");

    foreach ($custom_users as $custom_user)
    {
        echo $custom_user->first_name.' '.$custom_user->last_name;
    }
}

add_action('rest_api_init', function()
{
    register_rest_route( 'wpcustomusers/v1', '/users/', array(
        'methods' => 'GET',
        'callback' => 'get_wp_custom_users'
    ));
});

可以通过url http://localhost/mywebsite/wp-json/wpcustomusers/v1/users访问该API

你知道我怎么才能返回结果中的for loop从API请求作为JSON?

我希望看到返回的所有字段。谢谢您的帮助。

不需要foreach循环,进行如下更改。

function get_wp_custom_users(){
  global $wpdb;

  $custom_users = $wpdb->get_results("SELECT * FROM wp_custom_users");

  //change as below.
  echo json_encode($custom_users);
}

var_dump $ custom_users以确保$ custom_users不为空。 跳过for loop echo替换return

echo json_encode($custom_users);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM