WordPress.org

Make WordPress Core

Ticket #7086: 7086.2.diff

File 7086.2.diff, 7.7 KB (added by ionfish, 10 years ago)
  • wp-includes/theme.php

     
    232232                }
    233233
    234234                $stylesheet_files = array();
     235                $template_files = array();
     236               
    235237                $stylesheet_dir = @ dir("$theme_root/$stylesheet");
    236238                if ( $stylesheet_dir ) {
    237239                        while ( ($file = $stylesheet_dir->read()) !== false ) {
    238                                 if ( !preg_match('|^\.+$|', $file) && preg_match('|\.css$|', $file) )
    239                                         $stylesheet_files[] = "$theme_loc/$stylesheet/$file";
     240                                if ( !preg_match('|^\.+$|', $file) ) {
     241                                        if ( preg_match('|\.css$|', $file) )
     242                                                $stylesheet_files[] = "$theme_loc/$stylesheet/$file";
     243                                        elseif ( preg_match('|\.php$|', $file) )
     244                                                $template_files[] = "$theme_loc/$stylesheet/$file";
     245                                }
    240246                        }
    241247                }
    242248
    243                 $template_files = array();
    244249                $template_dir = @ dir("$theme_root/$template");
    245250                if ( $template_dir ) {
    246251                        while(($file = $template_dir->read()) !== false) {
     
    343348function get_query_template($type) {
    344349        $template = '';
    345350        $type = preg_replace( '|[^a-z0-9-]+|', '', $type );
    346         if ( file_exists(TEMPLATEPATH . "/{$type}.php") )
     351        if ( file_exists(STYLESHEETPATH . "/{$type}.php") )
     352                $template = STYLESHEETPATH . "/{$type}.php";
     353        elseif ( file_exists(TEMPLATEPATH . "/{$type}.php") )
    347354                $template = TEMPLATEPATH . "/{$type}.php";
    348355
    349356        return apply_filters("{$type}_template", $template);
     
    363370
    364371function get_category_template() {
    365372        $template = '';
    366         if ( file_exists(TEMPLATEPATH . "/category-" . absint( get_query_var('cat') ) . '.php') )
     373        if ( file_exists(STYLESHEETPATH . "/category-" . absint( get_query_var('cat') ) . '.php') )
     374                $template = STYLESHEETPATH . "/category-" . absint( get_query_var('cat') ) . '.php';
     375        elseif ( file_exists(TEMPLATEPATH . "/category-" . absint( get_query_var('cat') ) . '.php') )
    367376                $template = TEMPLATEPATH . "/category-" . absint( get_query_var('cat') ) . '.php';
     377        elseif ( file_exists(STYLESHEETPATH . "/category.php") )
     378                $template = STYLESHEETPATH . "/category.php";
    368379        elseif ( file_exists(TEMPLATEPATH . "/category.php") )
    369380                $template = TEMPLATEPATH . "/category.php";
    370381
     
    373384
    374385function get_tag_template() {
    375386        $template = '';
    376         if ( file_exists(TEMPLATEPATH . "/tag-" . get_query_var('tag') . '.php') )
     387        if ( file_exists(STYLESHEETPATH . "/tag-" . get_query_var('tag') . '.php') )
     388                $template = STYLESHEETPATH . "/tag-" . get_query_var('tag') . '.php';
     389        elseif ( file_exists(TEMPLATEPATH . "/tag-" . get_query_var('tag') . '.php') )
    377390                $template = TEMPLATEPATH . "/tag-" . get_query_var('tag') . '.php';
     391        elseif ( file_exists(STYLESHEETPATH . "/tag.php") )
     392                $template = STYLESHEETPATH . "/tag.php";
    378393        elseif ( file_exists(TEMPLATEPATH . "/tag.php") )
    379394                $template = TEMPLATEPATH . "/tag.php";
    380395
     
    385400        $template = '';
    386401        $taxonomy = get_query_var('taxonomy');
    387402        $term = get_query_var('term');
    388         if ( $taxonomy && $term && file_exists(TEMPLATEPATH . "/taxonomy-$taxonomy-$term.php") )
     403        if ( $taxonomy && $term && file_exists(STYLESHEETPATH . "/taxonomy-$taxonomy-$term.php") )
     404                $template = STYLESHEETPATH . "/taxonomy-$taxonomy-$term.php";
     405        elseif ( $taxonomy && $term && file_exists(TEMPLATEPATH . "/taxonomy-$taxonomy-$term.php") )
    389406                $template = TEMPLATEPATH . "/taxonomy-$taxonomy-$term.php";
     407        elseif ( $taxonomy && file_exists(STYLESHEETPATH . "/taxonomy-$taxonomy.php") )
     408                $template = STYLESHEETPATH . "/taxonomy-$taxonomy.php";
    390409        elseif ( $taxonomy && file_exists(TEMPLATEPATH . "/taxonomy-$taxonomy.php") )
    391410                $template = TEMPLATEPATH . "/taxonomy-$taxonomy.php";
     411        elseif ( file_exists(STYLESHEETPATH . "/taxonomy.php") )
     412                $template = STYLESHEETPATH . "/taxonomy.php";
    392413        elseif ( file_exists(TEMPLATEPATH . "/taxonomy.php") )
    393414                $template = TEMPLATEPATH . "/taxonomy.php";
    394415
     
    402423function get_home_template() {
    403424        $template = '';
    404425
    405         if ( file_exists(TEMPLATEPATH . "/home.php") )
     426        if ( file_exists(STYLESHEETPATH . "/home.php") )
     427                $template = STYLESHEETPATH . "/home.php";
     428        elseif ( file_exists(TEMPLATEPATH . "/home.php") )
    406429                $template = TEMPLATEPATH . "/home.php";
     430        elseif ( file_exists(STYLESHEETPATH . "/index.php") )
     431                $template = STYLESHEETPATH . "/index.php";
    407432        elseif ( file_exists(TEMPLATEPATH . "/index.php") )
    408433                $template = TEMPLATEPATH . "/index.php";
    409434
     
    419444        if ( 'default' == $template )
    420445                $template = '';
    421446
    422         if ( !empty($template) && !validate_file($template) && file_exists(TEMPLATEPATH . "/$template") )
     447        if ( !empty($template) && !validate_file($template) && file_exists(STYLESHEETPATH . "/$template") )
     448                $template = STYLESHEETPATH . "/$template";
     449        elseif ( !empty($template) && !validate_file($template) && file_exists(TEMPLATEPATH . "/$template") )
    423450                $template = TEMPLATEPATH . "/$template";
     451        elseif ( file_exists(STYLESHEETPATH . "/page.php") )
     452                $template = STYLESHEETPATH . "/page.php";
    424453        elseif ( file_exists(TEMPLATEPATH . "/page.php") )
    425454                $template = TEMPLATEPATH . "/page.php";
    426455        else
     
    455484}
    456485
    457486function get_comments_popup_template() {
    458         if ( file_exists( TEMPLATEPATH . '/comments-popup.php') )
     487        if ( file_exists( STYLESHEETPATH . '/comments-popup.php') )
     488                $template = STYLESHEETPATH . '/comments-popup.php';
     489        elseif ( file_exists( TEMPLATEPATH . '/comments-popup.php') )
    459490                $template = TEMPLATEPATH . '/comments-popup.php';
    460491        else
    461492                $template = get_theme_root() . '/default/comments-popup.php';
  • wp-includes/comment-template.php

     
    664664        update_comment_cache($comments);
    665665
    666666        define('COMMENTS_TEMPLATE', true);
    667         $include = apply_filters('comments_template', TEMPLATEPATH . $file );
     667               
     668        $include = apply_filters('comments_template', STYLESHEETPATH . $file );
    668669        if ( file_exists( $include ) )
    669670                require( $include );
     671        elseif ( file_exists( TEMPLATEPATH . $file ) )
     672                require( TEMPLATEPATH .  $file );
    670673        else
    671                 require( WP_CONTENT_DIR . '/themes/default/comments.php');
     674                require( get_theme_root() . '/default/comments.php');
    672675}
    673676
    674677/**
  • wp-includes/general-template.php

     
    44
    55function get_header() {
    66        do_action( 'get_header' );
    7         if ( file_exists( TEMPLATEPATH . '/header.php') )
     7        if ( file_exists( STYLESHEETPATH . '/header.php') )
     8                load_template( STYLESHEETPATH . '/header.php');
     9        elseif ( file_exists( TEMPLATEPATH . '/header.php') )
    810                load_template( TEMPLATEPATH . '/header.php');
    911        else
    1012                load_template( WP_CONTENT_DIR . '/themes/default/header.php');
     
    1315
    1416function get_footer() {
    1517        do_action( 'get_footer' );
    16         if ( file_exists( TEMPLATEPATH . '/footer.php') )
     18        if ( file_exists( STYLESHEETPATH . '/footer.php') )
     19                load_template( STYLESHEETPATH . '/footer.php');
     20        elseif ( file_exists( TEMPLATEPATH . '/footer.php') )
    1721                load_template( TEMPLATEPATH . '/footer.php');
    1822        else
    1923                load_template( WP_CONTENT_DIR . '/themes/default/footer.php');
     
    2226
    2327function get_sidebar( $name = null ) {
    2428        do_action( 'get_sidebar' );
    25         if ( isset($name) && file_exists( TEMPLATEPATH . "/sidebar-{$name}.php") )
     29        if ( isset($name) && file_exists( STYLESHEETPATH . "/sidebar-{$name}.php") )
     30                load_template( STYLESHEETPATH . "/sidebar-{$name}.php");
     31        elseif ( isset($name) && file_exists( TEMPLATEPATH . "/sidebar-{$name}.php") )
    2632                load_template( TEMPLATEPATH . "/sidebar-{$name}.php");
     33        elseif ( file_exists( STYLESHEETPATH . '/sidebar.php') )
     34                load_template( STYLESHEETPATH . '/sidebar.php');
    2735        elseif ( file_exists( TEMPLATEPATH . '/sidebar.php') )
    2836                load_template( TEMPLATEPATH . '/sidebar.php');
    2937        else