Come Sostituire l'Immagine in Evidenza di WordPress con un Video?
Devo sostituire le immagini in evidenza nelle pagine con un video se determinati post contengono un video di YouTube, Vimeo o altri servizi di hosting video consentiti da WordPress.
Ecco lo pseudo codice che vorrei usare su una pagina personalizzata:
if ( has_post_thumbnail( get_the_ID() {
if has_video(pseudocodice per verificare se il singolo post contiene un video YouTube) {
// mostra il player video
} else {
// mostra l'immagine in evidenza
}
}
Qualche suggerimento?

Supponiamo per semplicità che tu stia utilizzando ACF. Dopo aver installato ACF, devi creare un campo per il link del video e assegnarlo agli articoli. Poi, nell'articolo in cui vuoi che appaia un video, aggiungi l'URL. Solitamente assegno questo campo come un campo di testo e faccio inserire agli utenti l'ID di YouTube (l'ultima stringa di testo dopo il link youtube.com
).
Ad esempio, se il link del video fosse: https://www.youtube.com/J-ek8drxFJA
l'utente inserirebbe solo J-ek8drxFJA
nel campo.
Ora aggiungi questo codice alla tua copia di single.php che si trova nella cartella del child theme.
Nota che ho modificato l'istruzione if
. Non è necessario cercare la miniatura se intendi utilizzare un video:
if( get_field( 'video_link' ) ) {
echo 'questo è il mio ID del video ' . get_field( 'video_link' ); // oppure mostra il lettore video (vedi sotto)
} else {
if( has_post_thumbnail( get_the_ID() ) ){
// mostra la miniatura dell'articolo
}
// nessun video o foto
}
Naturalmente, se vuoi mostrare il video, dovrai fare qualcosa del genere invece:
if( get_field( 'video_link' ) ) {
$videoid = get_field( 'video_link' );
echo '<h2>Link del Video</h2><p>guarda il nostro video:</p><iframe width="420" height="315" src="https://www.youtube.com/embed/' . $videoid . '" frameborder="0" allowfullscreen></iframe>';
} else {
if( has_post_thumbnail( get_the_ID() ) ) {
// mostra la miniatura dell'articolo
}
// nessun video o foto
}
Ovviamente puoi modificare un po' il codice in base alle tue esigenze.

Sebbene risposte di qualità di qualsiasi tipo siano accettabili, si prega di notare che le risposte che rimandano l'utente a plugin di terze parti a volte non sono ben accolte. Questo tipo di risposte tende a generare ulteriori domande riguardanti i suddetti plugin di terze parti e tali domande sono considerate Off Topic.

Penso che dovresti provare questo plugin: https://wordpress.org/plugins/featured-video-plus/
Se non ti piace usare plugin aggiuntivi, allora dovresti assolutamente dare un'occhiata al loro codice come riferimento. Puoi esaminare il loro codice e personalizzarlo in base alle tue esigenze.
