WordPress Editor

WordPress のエディタから、不要なメディアボタンを削除する

WordPress EditorWordPress を、マルチサイト版で利用している場合、エディタ上部に表示されているメディアボタンの表示・非表示はオプションで設定できます。
しかし、シングルサイト版で使用している場合は、これらを制御することはできません。
シングルサイト版でも、制御することは不可能なんでしょうか?

実は media_buttons アクションフックを使用することで、実現可能です。

テーマの functions.php に以下の記述をコピペしましょう。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
function my_media_buttons() {
    remove_action( 'media_buttons', 'media_buttons' );
 
    $do_image = true;
    $do_audio = true;
    $do_video = true;
    if ( is_multisite() ) {
        $media_buttons = get_site_option( 'mu_media_buttons' );
        if ( empty($media_buttons['image']) )
            $do_image = false;
        if ( empty($media_buttons['audio']) )
            $do_audio = false;
        if ( empty($media_buttons['video']) )
            $do_video = false;
    }
    $out = '';
 
    if ( $do_image )
        $out .= _media_button(__('Add an Image'), 'images/media-button-image.gif?ver=20100531', 'image');
    if ( $do_video )
        $out .= _media_button(__('Add Video'), 'images/media-button-video.gif?ver=20100531', 'video');
    if ( $do_audio )
        $out .= _media_button(__('Add Audio'), 'images/media-button-music.gif?ver=20100531', 'audio');
 
    $out .= _media_button(__('Add Media'), 'images/media-button-other.gif?ver=20100531', 'media');
 
    $context = apply_filters('media_buttons_context', __('Upload/Insert %s'));
 
    printf($context, $out);
}
add_action( 'media_buttons', 'my_media_buttons', 9 );

「画像を追加」アイコンを非表示にしたい場合は 4行目を $do_image = false;
「音楽を追加」アイコンを非表示にしたい場合は 6行目を $do_audio = false;
「動画を追加」アイコンを非表示にしたい場合は 5行目を $do_video = false;
それぞれ変更すれば、不要なメディアアイコンは表示されません。

これって、WP Total Hacks に入れてもらえませんかねぇ?> @miya0001 さん。

WordPress のエディタから、不要なメディアボタンを削除する」への1件のフィードバック

  1. ピンバック: photopoto.net

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください