web-dev-qa-db-fra.com

Comment vérifier si Oembed est vide ou non

Nous utilisons souvent la fonction Oembed fournie par Wordpress pour intégrer des médias.

Une de mes conditions consiste à exécuter une boucle pour récupérer certaines publications à partir d'un type de publication personnalisé, mais je souhaite ignorer les publications dans lesquelles Oembed est vide.

Comment vérifier si Oembed est vide ou a une URL dans la méta de single.php.

J'ai essayé quelque chose comme ça →

<?php $url = esc_url( get_post_meta( get_the_ID(), 'video_oembed', true ) ); ?>
<?php $embed = wp_oembed_get( $url ); ?>

PHP nécessaire →

Maintenant, comment vérifier si $embed est vide ou non?

Mettre à jour à la demande →

Le front-end sera comme this , et il a tiré en exécutant une boucle personnalisée WP comme celle-ci.

Mais il peut y avoir une situation comme celle-ci où OEMBED est vide comme this .

Donc, ce que je veux, c’est que lorsque cette situation existe, la boucle doit exclure cette publication et pour cela, nous avons besoin de if condition qui vérifie si oembed est vide ou non.

enter image description here

1
The WP Novice

Le wp_oembed_get() ne fonctionne que pour les fournisseurs oEmbed pris en charge. La valeur de retour est également une URL de false, comme indiqué par le codex:

Si $ url est une URL valide pour un fournisseur pris en charge, la fonction renvoie le code intégré fourni à partir du protocole oEmbed. Sinon, il retournera faux.

Par conséquent, si l'entrée est vide, la valeur de retour serait false, vous pourriez donc simplement vérifier:

if ( $embed ) {
    // Valid
}
2
Jack Johansson

C’est un peu difficile de deviner quelle est vraiment votre question et ce que vous voulez vérifier exactement ...

Si vous voulez vérifier si $ embed est vide, cochez-le:

if ( ! trim($embed) ) {
    // it’s empty
}

Si vous voulez vérifier si l'URL $ est vide:

if ( ! trim($url) ) {
    // it’s empty
}
1