web-dev-qa-db-ger.com

So erhalten Sie die Themenliste über REST api?

Ich wollte eine Liste aller installierten WordPress-Themes zusammen mit ihren Metainformationen (z. B. Name, Status, Autor usw.) mit WordPress REST api erhalten. Ich wollte auch in der Lage sein, ein beliebiges Thema über meinen API-Client zu aktivieren.

Ich habe diese Dokumentation durchgesehen, aber keinen relevanten Endpunkt gefunden.

Ist es in diesem Moment möglich?

2
Faisal Khurshid

Sie können Ihren eigenen Endpunkt schreiben und wp_get_themes verwenden, um über diesen eine Liste von Themen zu erhalten. Hier ist eine einfache:

add_action( 'rest_api_init', function () {
    //Path to rest endpoint
    register_rest_route( 'theme_API/v1', '/get_theme_list/', array(
            'methods' => 'GET', 
            'callback' => 'theme_list_function' 
    ) );
});
// Our function to get the themes
function theme_list_function(){
    // Get a list of themes
    $list = wp_get_themes();
    // Return the value
    return $list;
}

Jetzt können Sie eine Liste Ihrer Themen abrufen, indem Sie auf http://example.com/wp-json/theme_API/v1/get_theme_list zugreifen.

Ich würde nicht vorschlagen, Themen über API zu aktivieren/deaktivieren. Es kann Dinge wie aktivierte Widgets völlig durcheinander bringen.

2
Jack Johansson