Make WordPress Core

Ticket #19063: new.diff

File new.diff, 896 bytes (added by impleri, 13 years ago)

first attempt

  • general-template.php

     
    123123        if ( isset($name) )
    124124                $templates[] = "{$slug}-{$name}.php";
    125125
     126        if (get_post_type() == false) {
     127                $term = get_queried_object();
     128                $type = $term->taxonomy;
     129        }
     130        else {
     131                $type = get_query_var('post_type');
     132        }
     133
     134        $default_types = array('post', 'page', 'attachment', 'category', 'post_tag', 'link_category', 'post_format');
     135        if (!in_array($type, $default_types)) {
     136                if (isset($name)) {
     137                        $templates[] = "$slug-$name-$type.php";
     138                }
     139                $templates[] = "$slug-$type.php";
     140        }
     141
    126142        $templates[] = "{$slug}.php";
    127143
    128         locate_template($templates, true, false);
     144        $template = locate_template($templates);
     145
     146        if (!in_array($type, $default_types)) {
     147                $template = apply_filters('get_custom_template_part', $template, $type, $slug, $name);
     148        }
     149
     150        load_template($template, false);
    129151}
    130152
    131153/**