ユーザーがVimeoアップロードAPIを介してVimeoにビデオをアップロードできるようにするプラグインを作成しようとしています。
共有している可能性のあるホスティングアカウントにビデオをアップロードし、そこからVimeoにアップロードしようとしないように、POST availability - https://developer.vimeoを介して直接Vimeoにアップロードしようとしています。 com/apis/advanced/upload#post
これを行うには、 'Vimeo'というカスタム投稿タイプのメタボックスの内側にフォームを配置する必要がありますが、wordPressはタグをフィルタリングしており、返されたHTMLソースの属性です。これを防ぐ方法はありますか、それとも私は間違ったアプローチを取っていますか?私はフォームの状況の中にフォームがあるかもしれないと思います。
ありがとう。
あなたが投稿(cpt)編集ページにいるのでメタボックスは投稿フォームに添付される単純にグループ化されたフィールドであり、あなたの場合あなたのメタボックスのフォーム属性をフィルタリングしているのは実際にブラウザです入れ子になったフォームを作成していますが、これはできないことです。
より良い方法は、メタボックスの内側に形式を持たないことですが、ここでは、ネイティブthickboxを使った例を示します。
//add the button to lanch the thickbox
add_action( 'media_buttons','add_vimeo_upload_button',100);
function add_vimeo_upload_button(){
global $pagenow,$typenow;
if (!in_array( $pagenow, array( 'post.php', 'post-new.php' ) ))
return;
echo '<a href="#TB_inline?height=155&width=300&inlineId=vimeo_upload" class="thickbox"><img src="http://i.imgur.com/5hyoa.png" alt="Upload to vimeo"></a>';
}
//add form html outside post form
add_filter('admin_footer','vimeo_upload_form');
function vimeo_upload_form(){
global $pagenow,$typenow;
if (!in_array( $pagenow, array( 'post.php', 'post-new.php' )))
return;
//once we get here we are on the right page so we echo form html:
?>
<div id="vimeo_upload" style="display:none">
<form method="POST" action="vimeo/url">
<p><label>Upload video to Vimeo</label>
<input type="file" name="" value="" placeholder=""></p>
<p><input type="submit" name="" value="upload"></p>
</form>
</div>
<?php
}
メディアボタン:
Thickboxのフォーム: