WordPress 3.5: переключиться обратно на Old Media Uploader?

8

Есть ли способ вернуться к старому медиа-загрузчику в WordPress 3.5? Новый для меня очень медленный, так как у меня на сайте тысячи и тысячи изображений, и у меня есть несколько плагинов, которые работают только со старым загрузчиком.

Сэл
источник
Какие плагины не работают с WP 3.5?
NoBugs

Ответы:

9

Я только что нашел этот драгоценный камень на форумах WordPress, все реквизиты для A.Morita .

Есть ли способ отключить новый Media Manager?

Подводя итог всему опубликованному коду, вот оно:

/**
 * I WANT THE OLD UPLOADER BACK
 * All code by: A.Morita
 * URL: http://wordpress.org/support/topic/is-there-a-way-to-disable-the-new-media-manager/
 */

/**
 * Old upload Thickbox
 */
add_action( 'admin_head', 'remove_media_buttons' );

function remove_media_buttons()
{
    remove_action( 'media_buttons', 'media_buttons' );
    add_action( 'media_buttons', 'old_media_buttons' );
}

function old_media_buttons( $editor_id = 'content' ) 
{
    $context = apply_filters( 'media_buttons_context', __('Upload/Insert %s') );

    $img = '<img src="' 
        . esc_url( admin_url( 'images/media-button.png?ver=20111005' ) ) 
        . '" width="15" height="15" />';

    echo '<a href="' 
        . esc_url( get_upload_iframe_src() ) 
        . '" class="thickbox add_media" id="' 
        . esc_attr( $editor_id ) 
        . '-add_media" title="' 
        . esc_attr__( 'Add Media' ) 
        . '" onclick="return false;">' 
        . sprintf( $context, $img ) 
        . '</a>';
}

/**
 * Featured image
 */
add_action( 'wp_default_scripts', 'unset_media_views', 999, 1 );
add_action( 'admin_head', 'remove_wp_print_media_templates' );

function unset_media_views($scripts)
{
    unset( $scripts->registered['media-views'] );
}

function remove_wp_print_media_templates()
{
    remove_action( 'admin_footer', 'wp_print_media_templates' );
    remove_action( 'wp_footer', 'wp_print_media_templates' );
}


/**
 * Adjust Full Screen behavior
 */
add_action( 'after_wp_tiny_mce', 'fullscreen_media_button' );

function fullscreen_media_button()
{
    ?>
    <script type="text/javascript">
    fullscreen.medialib = function() 
    {
        var href = jQuery('div#wp-content-media-buttons a.thickbox').attr('href') || '';
        tb_show('', href);
    }
    </script>
    <?php
}

Завернуто как плагин в Gist .

brasofilo
источник
Здорово, брсофило! Отличный способ взять целую цепочку компромиссов и довести ее до самого необходимого. :)
akTed