新しいWordpress 3.5の[メディアの追加]ポップアップページでInsert from URL
リンクを削除する方法を教えてください。 Wordpressの以前のバージョンでは、これはうまくいきました:
// removes URL tab in image upload for post
function remove_media_library_tab($tabs) {
if (isset($_REQUEST['post_id'])) {
$post_type = get_post_type($_REQUEST['post_id']);
if ('premium' == $post_type)
unset($tabs['library']);
unset($tabs['type_url']);
}
return $tabs;
}
add_filter('media_upload_tabs', 'remove_media_library_tab');
知るか?
これはうまくいくはずです。
add_filter( 'media_view_strings', 'cor_media_view_strings' );
/**
* Removes the media 'From URL' string.
*
* @see wp-includes|media.php
*/
function cor_media_view_strings( $strings ) {
unset( $strings['insertFromUrlTitle'] );
return $strings;
}
New WPのデフォルトのタブ配列のコードはmedia.phpにあり、次のようになります。
/**
* Defines the default media upload tabs
*
* @since 2.5.0
*
* @return array default tabs
*/
function media_upload_tabs() {
$_default_tabs = array(
'type' => __('From Computer'), // handler action suffix => tab text
'type_url' => __('From URL'),
'gallery' => __('Gallery'),
'library' => __('Media Library')
);
return apply_filters('media_upload_tabs', $_default_tabs);
}
デフォルトでアップロードからURLを削除するだけの場合は、関数を次のように変更する必要があります。
// removes URL tab in image upload for post
function remove_media_library_tab($tabs) {
unset($tabs['type_url']);
return $tabs;
}
add_filter('media_upload_tabs', 'remove_media_library_tab');
テストされていませんが、それはうまくいくはずです。
編集:この配列は他の場所で使用されているので動作しません。リンクを削除するだけの場合は、この回避策を使用できます。
function remove_media_library_tab(){
?>
<style>
.media-menu a:last-child{ display:none}
</style>
<?php
}
add_action('admin_head', 'remove_media_library_tab');