WordPress.org

Make WordPress Core

Changeset 13453


Ignore:
Timestamp:
02/27/10 07:36:35 (4 years ago)
Author:
nacin
Message:

add_editor_style() third pass. better performance and better child theme support. see #11512

Location:
trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/wp-admin/includes/post.php

    r13242 r13453  
    13061306 */ 
    13071307function wp_tiny_mce( $teeny = false, $settings = false ) { 
    1308     global $concatenate_scripts, $compress_scripts, $tinymce_version; 
     1308    global $concatenate_scripts, $compress_scripts, $tinymce_version, $editor_styles; 
    13091309 
    13101310    if ( ! user_can_richedit() ) 
     
    14681468    ); 
    14691469 
    1470     $mce_css = trim(apply_filters('mce_css', ''), ' ,'); 
     1470    if ( ! empty( $editor_styles ) && is_array( $editor_styles ) ) { 
     1471        $mce_css = array(); 
     1472        $style_uri = get_stylesheet_directory_uri(); 
     1473        if ( TEMPLATEPATH == STYLESHEETPATH ) { 
     1474            foreach ( $editor_styles as $file ) 
     1475                $mce_css[] = "$style_uri/$file"; 
     1476        } else { 
     1477            $style_dir    = get_stylesheet_directory(); 
     1478            $template_uri = get_template_directory_uri(); 
     1479            $template_dir = get_template_directory(); 
     1480            foreach ( $editor_styles as $file ) { 
     1481                if ( file_exists( "$style_dir/$file" ) ) 
     1482                    $mce_css[] = "$style_uri/$file"; 
     1483                if ( file_exists( "$template_dir/$file" ) ) 
     1484                    $mce_css[] = "$template_uri/$file"; 
     1485            } 
     1486        } 
     1487        $mce_css = implode( ',', $mce_css ); 
     1488    } else { 
     1489        $mce_css = ''; 
     1490    } 
     1491 
     1492    $mce_css = trim( apply_filters( 'mce_css', $mce_css ), ' ,' ); 
    14711493 
    14721494    if ( ! empty($mce_css) ) 
  • trunk/wp-includes/theme.php

    r13444 r13453  
    14661466        return; 
    14671467 
    1468     global $editor_style; 
    1469     $editor_style = (array) $editor_style; 
    1470     $stylesheet   = (array) $stylesheet; 
    1471     foreach ( $stylesheet as $file ) { 
    1472         if ( file_exists( get_stylesheet_directory() . "/$file" ) 
    1473             && ( $uri = get_stylesheet_directory_uri() . "/$file" ) 
    1474             && ! in_array( $uri, $editor_style ) ) 
    1475             $editor_style[] = $uri; 
    1476         elseif ( TEMPLATEPATH !== STYLESHEETPATH 
    1477             && file_exists( get_template_directory() . "/$file" ) 
    1478             && ( $uri = get_template_directory_uri() . "/$file" ) 
    1479             && ! in_array( $uri, $editor_style ) ) 
    1480             $editor_style[] = $uri; 
    1481     } 
    1482     add_filter( 'mce_css', '_editor_style_cb' ); 
    1483 } 
    1484  
    1485 /** 
    1486  * Callback for custom editor stylesheet support. 
    1487  * 
    1488  * @since 3.0.0 
    1489  * @see add_editor_style() 
    1490  * @access protected 
    1491  */ 
    1492 function _editor_style_cb( $url ) { 
    1493     global $editor_style; 
    1494     if ( ! empty( $url ) ) 
    1495         $url .= ','; 
    1496     return $url . implode( ',', $editor_style ); 
     1468    global $editor_styles; 
     1469    $editor_styles = (array) $editor_styles; 
     1470    $stylesheet    = (array) $stylesheet; 
     1471    $editor_styles = array_merge( $editor_styles, $stylesheet ); 
    14971472} 
    14981473 
     
    15211496 * @return boolean 
    15221497 */ 
    1523  
    15241498function current_theme_supports( $feature ) { 
    15251499    global $_wp_theme_features; 
Note: See TracChangeset for help on using the changeset viewer.