web-dev-qa-db-fra.com

Comment obtenir la liste des thèmes via REST api?

Je voulais obtenir une liste de tous les thèmes WordPress installés, ainsi que leurs méta-informations (nom, statut, auteur, etc.) à l'aide de WordPress REST api. Je voulais aussi pouvoir activer n'importe quel thème via mon client API.

J'ai parcouru cette documentation mais je n'ai trouvé aucun critère pertinent.

Est-ce possible en ce moment?

2
Faisal Khurshid

Vous pouvez écrire votre propre point de terminaison et utiliser wp_get_themes pour obtenir une liste de thèmes via cela. Voici un simple:

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;
}

Vous pouvez maintenant obtenir une liste de vos thèmes en accédant à http://example.com/wp-json/theme_API/v1/get_theme_list.

Je ne suggérerais pas d'activer/désactiver des thèmes via une API. Il peut totalement gâcher des choses, telles que des widgets activés.

2
Jack Johansson