首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >我是否可以使用wp_oembed_get来检测有效的可嵌入链接,或者是否有更好的方法来实现?

我是否可以使用wp_oembed_get来检测有效的可嵌入链接,或者是否有更好的方法来实现?
EN

WordPress Development用户
提问于 2019-09-12 07:37:18
回答 1查看 258关注 0票数 1

我正在寻找一种有效的方法来检测用户输入是否是一个有效的嵌入链接(以及类型)。我知道这会导致WordPress在任意输入的情况下运行其嵌入代码。

例如,如下所示:

代码语言:javascript
运行
复制
$embed_code = wp_oembed_get($some_string);
if($embed_code!=FALSE){
    // do something clever
}

假设至少有一些链接,它将返回一个完全标记的链接,失败所有其他链接。然而,我所追求的行为是能够为它提供一些用户的输入(在适当的卫生条件下),如果内容是一个不识别的URL,则返回一个完全标记的嵌入或一个假的但不是一个超链接。其目的是检测给定的输入文本是否为有效的可嵌入URL。

我是否可以(或应该)使用wp_oembed_get来检测有效的可嵌入链接,或者有更好的方法来这样做?

EN

回答 1

WordPress Development用户

回答已采纳

发布于 2019-09-12 08:43:47

用于匹配可嵌入URL的regex模式存储在WP_oEmbed中,该方法具有get_provider()方法,用于检查给定URL是否为支持的提供者的可嵌入URL。只需将discover参数设置为false,如果您不想实际向URL发送请求来测试它,并且只想匹配regex:

代码语言:javascript
运行
复制
$url      = 'https://twitter.com/WordPress/status/1169427892406644736';
$oembed   = new WP_oEmbed();
$provider = $oembed->get_provider( $url, [ 'discover' => false ] );

if ( false !== $provider ) {
    // Is embeddable.
}
票数 3
EN
页面原文内容由WordPress Development提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://wordpress.stackexchange.com/questions/348123

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档