如何保存更改后的url YouTube链接?

时间:2013-08-05 作者:Hai Truong IT

在函数中。php i使用此更改youtube的宽度url:

add_action(\'save_post\', \'set_url_youtube\');
function set_url_youtube() {
    $post = get_post($post_id); 
    $content = $post->post_content;
    preg_match_all(\'#(http://www.youtube.com)?/(v/([-|~_0-9A-Za-z]+)|watch\\?v\\=([-|~_0-9A-Za-z]+)&?.*?)#i\', $content, $urls, PREG_SET_ORDER);
    if(is_array($urls)) {
       foreach ($urls as $url)
       $videos_url[] = $url[0];
    }

    if (is_array($videos_url)) {
        $videos_url = array_unique($videos_url);
        rsort($videos_url);
    }   

    if($videos_url) {
        foreach ($videos_url as $video_url) {
            $content = str_replace($video_url, $video_url.\'&w=550\', $content);
        }
        remove_action( \'save_post\', \'set_url_youtube\' );
        wp_update_post( array(\'ID\' => $post_id, \'post_content\' => $content) );
        add_action( \'save_post\', \'set_url_youtube\' );
    }
}
?>
但当save post为时,urlhttp://www.youtube.com/watch?v=KTRPVo0d90w 不更改为http://www.youtube.com/watch?v=KTRPVo0d90w&w=550如何修复它?

1 个回复
SO网友:Ravinder Kumar

我想您想更改默认视频宽度。您可以通过以下方式更改默认嵌入视频的宽度和高度embed_defaults 滤器

add_filter(\'embed_defaults\', \'ravs_embed_defaults\');

function ravs_embed_defaults($embed_size) {
    if (is_single()) { // Conditionally set max height and width
        $embed_size[\'width\'] = 640;
        $embed_size[\'height\'] = 600;
    } else {           // Default values
        $embed_size[\'width\'] = 460;
        $embed_size[\'height\'] = 600;
    }
    return $embed_size; // Return new size
}

结束

相关推荐

如何显示用户YouTube帐户中的所有YouTube视频

我想将我的youtube帐户中最近上传的所有youtube视频显示为页面右侧的小部件。就像Technobalo。com已完成。有没有这样的插件可以做到这一点?ps:至于我所尝试的,我已经在WordPress插件页面上搜索过了,我看到的都是插件,这些插件允许我为视频添加一个简短的代码作为帖子。但这不是我想要的。我只想在右侧自动显示所有最近上传的视频,就像Technobalo一样。