我正在使用IFTTT.com将YouTube视频导入Wordpress。我导入的其中一个元素是YouTube视频的网址。我想将此网址复制到我的主题附带的自定义字段以显示嵌入的视频。我意识到我可以将嵌入式视频从IFTTT导入到我的帖子中,但我更喜欢我的主题在使用他们创建的视频嵌入自定义字段时提供的格式。
示例:
导入到帖子的网址如下所示:
http://www.youtube.com/watch?v=qCVQpcY1au4
(例子来自IFTTT我希望视频选择不会太烦人)
我需要将此复制到VideoEmbedCustomField,如下所示: http://www.youtube.com/embed/qCVQpcY1au4
我很遗憾没有代码可以使用。我正在研究更新帖子的插件。任何帮助或建议表示赞赏。
在导入时,我需要一个能识别导入到帖子的URL的函数
example: <a href="http://www.youtube.com/embed/qCVQpcY1au4" id="youtubelink" class="ytlink">YouTube Link</a>
如果网址存在,则会将链接转换为
http://www.youtube.com/embed/qCVQpcY1au4
并将其插入自定义字段
答案 0 :(得分:2)
因此,您需要在适当的位置使用函数通过regex进行此转换:
public static function convertYouTube($original) {
$pattern = '/http:\/\/www\.youtube\.com\/watch\?v=([\w]+)/';
$replacement = 'http://www.youtube.com/embed/${1}';
return $embedLink = preg_replace($pattern,$replacement,$original);
}
pattern
指示您要捕获的输入部分。在这种情况下,它是([\w]+)
子句,大致翻译为“抓住一个或多个字母数字字符的序列”,恰好在你的(正确转义的)常量youtube url之后。
preg_replace
是一个php函数,它允许你抓住你抓住的部分并替换其余部分。现在您已经有一个正确转换的URL,您可以将其放入您需要的任何字段中。