将帖子中的URL复制到Wordpress中的自定义字段中


Copy a URL from a post to a custom field in Wordpress

我正在使用IFTTT.com将youtube视频导入Wordpress。我正在导入的元素之一是youtube视频的URL。我想把这个url复制到我的主题附带的一个自定义字段中,以显示嵌入的视频。我意识到我可以将嵌入的视频从IFTTT导入到我的帖子中,但我更喜欢我的主题在使用他们创建的视频嵌入自定义字段时提供的格式。

示例:

导入到帖子的URL如下所示:

http://www.youtube.com/watch?v=qCVQpcY1au4
(示例取自IFTTT,我希望视频选择不会太麻烦)

我需要将此复制到VideoEmbeddeCustomField,如下所示:http://www.youtube.com/embed/qCVQpcY1au4

不幸的是,我没有可以使用的代码。我在研究更新帖子的插件。如有任何帮助或建议,我们将不胜感激。

  1. 使用IFTTT.com将视频从YouTube导入Wordpress帖子。这很有效
  2. 在导入时,我需要一个功能,可以识别导入到后的URL

    example:  <a href="http://www.youtube.com/embed/qCVQpcY1au4" id="youtubelink" class="ytlink">YouTube Link</a>
    
  3. 如果url存在,它将把链接转换为

    http://www.youtube.com/embed/qCVQpcY1au4 
    

    并将其插入自定义字段

因此,您需要在适当的位置使用一个函数来通过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,你可以把它放在你需要的任何字段中。