Paparan gambar luar talian pemalam Twitch WP
<p>Saya sedang menulis pemalam status Twitch WordPress yang memaparkan imej mudah jika Twitch berada dalam talian atau luar talian, tetapi saya tidak dapat membuatnya berfungsi. Berikut ialah kandungan fail: </p>
<pre class="brush:php;toolbar:false;"><?php
/*
Nama Pemalam: Status Twitch - InvidiousAus
Penerangan: Memaparkan imej jika saluran Twitch "invidiousus" berada dalam talian.
Pengarang: Nama Anda
Versi: 1.0
*/
fungsi smfr_twitch_get_stream_status($channel) {
$client_id = 'we57gvgtlmhqnmk44d3mcbc68rgrd1'; // Gantikan dengan ID Pelanggan API Twitch anda
$api_url = "https://api.twitch.tv/helix/streams?user_login={$channel}";
$headers = array(
'Client-ID' => $client_id,
);
$args = array(
'headers' => $headers,
);
$respons = wp_remote_get($api_url, $args);
if (is_wp_error($response)) {
kembali "Ralat mengambil status Twitch.";
}
$kod_tindak balas = wp_remote_retrieve_response_code($respons);
if ($respon_code === 200) {
$body = wp_remote_retrieve_body($respons);
$data = json_decode($body, true);
jika (!kosong($data['data'])) {
kembali 'dalam talian';
}
}
kembali 'luar talian';
}
fungsi smfr_twitch_status_fnc() {
$channel = 'invidiousaus'; // Kemas kini kepada "invidiousaus"
$status_stream = smfr_twitch_get_stream_status($channel);
if ($status_stream === 'dalam talian') {
// Jika saluran disiarkan secara langsung, tunjukkan imej "dalam talian".
$html = "<div class='smfr-twitch-status'><img src='" .
} lain {
// Jika saluran di luar talian, tunjukkan imej "luar talian".
$html = "<div class='smfr-twitch-status'><img src='" .
}
pulangkan $html;
}
fungsi smfr_twitch_status_style() {
// Daftarkan lembaran gaya untuk pemalam (jika perlu)
// 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>Cuba menggunakan titik akhir API yang berbeza tetapi mendapat hasil kosong. </p><p>Hasil yang diingini ialah untuk memaparkan saluran yang berada dalam talian di twitch.tv. </p><p><br /></p>