如何检查Oemed是否为空

时间:2018-06-03 作者:The WP Intermediate

我们经常使用Wordpress提供的Oembed功能来嵌入媒体。

我有一个条件,我正在运行一个循环以从自定义帖子类型获取某些帖子,但我想跳过Oembed为空的帖子。

如何检查Oembed是否为空,或者在single的meta中是否有URL。php。

我试过这样的→

<?php $url = esc_url( get_post_meta( get_the_ID(), \'video_oembed\', true ) ); ?>
<?php $embed = wp_oembed_get( $url ); ?>
需要PHP→现在如何检查$embed 是否为空?

按要求更新→

前端将类似this, 它是通过运行这样的WP自定义循环来实现的。

但也有可能出现这样的情况,其中OEMBED是空的,就像this.

所以我想要的是,当这种情况存在时,循环应该排除该帖子,为此,我们需要if condition 检查oembed是否为空。

enter image description here

2 个回复
最合适的回答,由SO网友:Johansson 整理而成

这个wp_oembed_get() 仅适用于受支持的oEmbed提供程序。返回值也是false的URL,如codex所述:

如果$url是指向受支持提供者的有效url,则该函数将返回从oEmbed协议提供给它的嵌入代码。否则,它将返回false。

因此,如果输入为空,则返回值将为false,因此您只需检查:

if ( $embed ) {
    // Valid
}

SO网友:Krzysiek Dróżdż

很难猜测你的问题到底是什么,你到底想检查什么。。。

如果要检查$embed是否为空,只需检查它:

if ( ! trim($embed) ) {
    // it’s empty
}
如果要检查$url是否为空:

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

结束

相关推荐

在PHP 7.1上添加操作初始化中断站点

如果没有可用的子主题,我会使用自定义插件进行一些小的更改。以下用于隐藏更新通知等的代码始终运行良好。然而,如果我从PHP 7.0切换到7.1,就会破坏网站。即使在没有激活其他插件和最新的2017主题的情况下,我的测试安装也是如此。我想不出这个问题。有什么想法吗?非常感谢。function remove_core_updates() { global $wp_version;return(object) array(\'last_checked\'=> time(),\'version_c