2012-01-19 7 views
1

私は、ワードプレスのバナーをアップロードするために使用されるポストタイプを持っています。名前、画像/動画、およびURLにカスタムフィールドを使用する。デフォルトのメディアアップロードは画像/動画をアップロードするためにうまく動作しますが、私の問題はカスタムフィールドにビデオベースのURLを取得できないことです。wordpressのメディアアップロードを使用してビデオファイルをアップロードするには?

ここに私のコードは、ビデオのURLを取得することはできません。それは私にビデオファイル名を与えるだけです。

window.send_to_editor = function(html) { 

    var imgurlar = html.match(/<img[^>]+src=\"([^\"]+)\"/); 
    var imgurl = imgurlar[1]; 

    //image 
    if(imgurl.length){ 
     jQuery('#wsp_media').val(imgurl); 
     jQuery('#preview-wsp-media').html('<img src="'+imgurl+'" style="max-width:30px; max-height:50px"/><input type="button" value="Remove" class="button" onclick="removeUspMedia()"/>'); 
    } 
    //video 
    else{ 
     var fileurl = jQuery(html); 
      //above "html" carries only video name if I click on "none" button in media library 

     //check if fileurl is a video ?? 
     var fName = jQuery(fileurl).attr('href'); 

     ext = fName.split('.').pop().toLowerCase(); 
     var validVideos = [<?php echo "'" . implode("','", explode(' ', $this->validVideos)) . "'"?>]; 
     if(jQuery.inArray(ext, validVideos) == -1){ 
      alert('invalid video file selected'); 
     }else{ 
      jQuery('#wsp_media').val(fName); 
      jQuery('#preview-wsp-media').html('<img src="<?php bloginfo('url')?>/wp-includes/images/crystal/video.png" style="max-width:30px; max-height:50px"/><input type="button" value="Remove" class="button" onclick="removeUspMedia()"/>'); 
     } 
    } 
    tb_remove(); 

} 

答えて

1

私は解決策を自分で見つけました。

add_filter('media_send_to_editor', 'media_editor', 1, 3); 

は、出力HTMLに動画のURLを追加 "media_send_to_editor" でフィルタを追加

function media_editor($html, $send_id, $attachment){ 
    //get the media's guid and append it to the html 
    $post = get_post($send_id); 
    $html .= '<media>'.$post->guid.'</media>'; 
    return $html; 
} 

ゲットこの

window.send_to_editor = function(html) { 
     ....... 
     ....... 
     var pathArray = html.match(/<media>(.*)<\/media>/); 
     var mediaUrl = pathArray != null && typeof pathArray[1] != 'undefined' ? pathArray[1] : ''; 
     jQuery('#wsp_media').val(mediaUrl); 
     ....... 
     ....... 
    } 
のようなメディアのURL
関連する問題