WordPress.org

Make WordPress Core

Ticket #20509: 20509.patch

File 20509.patch, 3.5 KB (added by johnbillion, 3 years ago)
  • wp-includes/plugin.php

     
    595595        return trailingslashit( plugins_url( '', $file ) ); 
    596596} 
    597597 
     598function register_generic_plugin_template( $file ) { 
     599        global $wp_generic_plugin_template; 
     600        $wp_generic_plugin_template = $file; 
     601} 
     602 
     603function get_generic_plugin_template() { 
     604        global $wp_generic_plugin_template; 
     605        return $wp_generic_plugin_template ? $wp_generic_plugin_template : false; 
     606} 
     607 
    598608/** 
    599609 * Set the activation hook for a plugin. 
    600610 * 
  • wp-includes/query.php

     
    715715} 
    716716 
    717717/** 
     718 * Is the query a generic request? 
     719 * 
     720 * @see WP_Query::is_generic_request() 
     721 * @since 3.4 
     722 * @uses $wp_query 
     723 * 
     724 * @return bool 
     725 */ 
     726function is_generic_request() { 
     727        global $wp_query; 
     728 
     729        if ( ! isset( $wp_query ) ) { 
     730                _doing_it_wrong( __FUNCTION__, __( 'Conditional query tags do not work before the query is run. Before then, they always return false.' ), '3.1' ); 
     731                return false; 
     732        } 
     733 
     734        return $wp_query->is_generic_request(); 
     735} 
     736 
     737/** 
    718738 * Is the query the main query? 
    719739 * 
    720740 * @since 3.3.0 
     
    11771197        var $is_404 = false; 
    11781198 
    11791199        /** 
     1200         * Set if query is a generic request. 
     1201         * 
     1202         * @since 3.4 
     1203         * @access public 
     1204         * @var bool 
     1205         */ 
     1206        var $is_generic_request = false; 
     1207 
     1208        /** 
    11801209         * Set if query is within comments popup window. 
    11811210         * 
    11821211         * @since 1.5.0 
     
    13051334                $this->is_trackback = false; 
    13061335                $this->is_home = false; 
    13071336                $this->is_404 = false; 
     1337                $this->is_generic_request = false; 
    13081338                $this->is_comments_popup = false; 
    13091339                $this->is_paged = false; 
    13101340                $this->is_admin = false; 
     
    35013531        } 
    35023532 
    35033533        /** 
     3534         * Is the query a generic request? 
     3535         * 
     3536         * @since 3.4 
     3537         * 
     3538         * @return bool 
     3539         */ 
     3540        function is_generic_request() { 
     3541                return (bool) $this->is_generic_request; 
     3542        } 
     3543 
     3544        /** 
    35043545         * Is the query the main query? 
    35053546         * 
    35063547         * @since 3.3.0 
  • wp-includes/template-loader.php

     
    2020 
    2121if ( defined('WP_USE_THEMES') && WP_USE_THEMES ) : 
    2222        $template = false; 
    23         if     ( is_404()            && $template = get_404_template()            ) : 
     23        if     ( is_generic_request() && $template = get_generic_request_template() ) : 
     24        elseif ( is_404()            && $template = get_404_template()            ) : 
    2425        elseif ( is_search()         && $template = get_search_template()         ) : 
    2526        elseif ( is_tax()            && $template = get_taxonomy_template()       ) : 
    2627        elseif ( is_front_page()     && $template = get_front_page_template()     ) : 
  • wp-includes/template.php

     
    5252} 
    5353 
    5454/** 
     55 * Retrieve path of generic request template in current or parent template. 
     56 * 
     57 * @since 3.4 
     58 * 
     59 * @return string 
     60 */ 
     61function get_generic_request_template() { 
     62        $generic = get_query_template('generic'); 
     63 
     64        if ( !$generic ) 
     65                $generic = get_generic_plugin_template(); 
     66 
     67        if ( !$generic ) 
     68                $generic = get_index_template(); 
     69 
     70        return $generic; 
     71} 
     72 
     73/** 
    5574 * Retrieve path of archive template in current or parent template. 
    5675 * 
    5776 * @since 1.5.0