Affichage d'images hors ligne Plug-in Twitch WP
P粉391677921
P粉391677921 2023-07-26 16:40:51
0
1
595
<p>J'écris un plugin de statut Twitch WordPress qui affiche une image simple si Twitch est en ligne ou hors ligne, mais je n'arrive pas à le faire fonctionner. Voici le contenu du fichier : </p> <pre class="brush:php;toolbar:false;"><?php /* Nom du plugin : Statut Twitch - InvidiousAus Description : Affiche une image si la chaîne Twitch "invidiousaus" est en ligne. Auteur : Votre nom Version : 1.0 */ fonction smfr_twitch_get_stream_status ($ canal) { $client_id = 'we57gvgtlmhqnmk44d3mcbc68rgrd1'; // Remplacez par votre ID client de l'API Twitch $api_url = "https://api.twitch.tv/helix/streams?user_login={$channel}"; $en-têtes = tableau( 'ID-Client' => $client_id, ); $args = tableau( 'en-têtes' => $en-têtes, ); $response = wp_remote_get($api_url, $args); if (is_wp_error($response)) { return "Erreur lors de la récupération du statut Twitch."; } $response_code = wp_remote_retrieve_response_code($response); si ($response_code === 200) { $body = wp_remote_retrieve_body($response); $data = json_decode($body, true); si (!empty($data['data'])) { retourner « en ligne » ; } } renvoyer « hors ligne » ; } fonction smfr_twitch_status_fnc() { $channel = 'invidiousaus'; // Mise à jour vers "invidiousaus" $stream_status = smfr_twitch_get_stream_status($canal); if ($stream_status === 'en ligne') { // Si la chaîne est en direct, afficher l'image "en ligne" $html = "<div class='smfr-twitch-status'><img src='" . } autre { // Si la chaîne est hors ligne, afficher l'image "hors ligne" $html = "<div class='smfr-twitch-status'><img src='" . } renvoie $html; } fonction smfr_twitch_status_style() { // Enregistrez la feuille de style du plugin (si nécessaire) // wp_enqueue_style('smfr_twitch_status_style', plugin_dir_url(__FILE__) . 'style.css'); } add_action('wp_enqueue_scripts', 'smfr_twitch_status_style'); add_shortcode('smfr_twitch_status', 'smfr_twitch_status_fnc');</pre> <p>J'ai essayé d'utiliser différents points de terminaison d'API, mais j'ai obtenu un résultat vide. </p><p>Le résultat souhaité est d'afficher les chaînes en ligne sur twitch.tv. </p><p><br /></p>
P粉391677921
P粉391677921

répondre à tous(1)
P粉832490510

Vos en-têtes $ manquent Autorisation : Bearer 2gbdx6oar67tqtcmt49t3wpcgycthx ou jeton similaire.

Selon la documentation sur https://dev.twitch.tv/docs/api/reference/#get-streams, l'autorisation nécessite un jeton d'accès à l'application ou un jeton d'accès utilisateur.

Lisez la documentation pour savoir comment obtenir un tel jeton. Il peut s'agir du flux oAuth. Fondamentalement, vous devez créer une application, puis obtenir le client_id et le client_secret. Utilisez client_secret pour demander le jeton. Une fois que vous disposez du jeton, vous pouvez l'ajouter à l'en-tête, puis utiliser l'API au nom de votre application. (Il peut y avoir un flux différent pour les jetons d'accès utilisateur).


Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal