为什么我的 Wordpress 自定义路由不从数据库中返回数据?

Why isn't my Wordpress custom route returning data out of the database?

下面的代码是我的自定义端点,我试图从我的 saic3_LibraryIndex 数据库中获取数据。

<?php
add_action('rest_api_init', function () {

    register_rest_route('libraries/v1', '/all', array(
        'methods' => 'GET',
        'callback' => 'retrieve_libraries'
    ) );

} );

function retrieve_libraries( $data ) {

    global $saic3_LibraryIndex;
    $query = "SELECT * FROM `Library`";
    $list = $saic3_LibraryIndex->get_results($query);
    return $list;

}

在我的 javascript 中,我是 运行 一个 ajax 页面加载调用,试图根据数据库中的信息动态填充页面。现在我只是使用这个电话来确保我得到了回报。

 <script type="text/javascript"> 


jQuery(document).ready(function( $ ){

    $.ajax({
        url: "/wp-json/libraries/v1",
        method: 'GET',
        success: function(response) {
            console.log(response);
        },
        failure: function(err) {
            console.log(err);
        }
    });
});

</script>

路由成功,但没有给我 404,但我返回的响应中没有数据。响应只是

{namespace: "libraries/v1", routes: {…}, _links: {…}}
     namespace
     :
     "libraries/v1"
     routes
     :
     /libraries/v1
     :
     endpoints
     :
     [{…}]
     methods
     :
     ["GET"]
 namespace
 :
 "libraries/v1"
 _links
 :
 {self: "{`my-url-.com`/wp-json/libraries/v1"}
 __proto__
 :
 Object
 /libraries/v1/all
 :
 endpoints
 :
 [{…}]
 methods
 :
 ["GET"]
 namespace
 :
 "libraries/v1"
 _links
 :
 {self: "`my-url-.com`/wp-json/libraries/v1/all"}
 __proto__
 :
 Object
 __proto__
 :
 Object
 _links
 :
 up
 :
 [{…}]
 __proto__
 :
 Object
 __proto__
 :
 Object

我是 WordPress 的新手,因此非常感谢任何帮助。据我所知,该数据库被命名为 saic3_LibraryIndex,我认为它将取代 wpdb。我尝试将其切换到 wpdb 并仅使用此调用来获取本地帖子,但这仍然在控制台中给出相同的响应。我几乎可以肯定端点写错了,只是不知道如何正确写。

已解决

因为我试图连接到 wpdb 之外的另一个数据库,所以我需要像这样创建一个新的 wpdb 实例...

add_action('rest_api_init', function () {
    register_rest_route('libraries/v1', '/all', array(
    'methods' => 'GET',
    'callback' => 'retrieve_libraries'
    ) );
} );

function retrieve_libraries( $data ) {
    $second_db = new wpdb(DB_USER, DB_PASSWORD, "saic3_LibraryIndex", DB_HOST);
    $query = "SELECT * FROM `Library`";
    $list = $second_db->get_results($query);
    return $list;
}