• The $s argument does not exist in the load_template function. Also in which part of the function is it used?

    
    function load_template( $_template_file, $require_once = true, $args = array() ) {
    	global $posts, $post, $wp_did_header, $wp_query, $wp_rewrite, $wpdb, $wp_version, $wp, $id, $comment, $user_ID;
    
    	if ( is_array( $wp_query->query_vars ) ) {
    		/*
    		 * This use of extract() cannot be removed. There are many possible ways that
    		 * templates could depend on variables that it creates existing, and no way to
    		 * detect and deprecate it.
    		 *
    		 * Passing the EXTR_SKIP flag is the safest option, ensuring globals and
    		 * function variables cannot be overwritten.
    		 */
    		// phpcs:ignore WordPress.PHP.DontExtract.extract_extract
    		extract( $wp_query->query_vars, EXTR_SKIP );
    	}
    
    	if ( isset( $s ) ) {
    		$s = esc_attr( $s );
    	}
    
    	if ( $require_once ) {
    		require_once $_template_file;
    	} else {
    		require $_template_file;
    	}
    }
    
    • This topic was modified 5 years, 2 months ago by golestan12designer.
    • This topic was modified 5 years, 2 months ago by golestan12designer.
    • This topic was modified 5 years, 2 months ago by Yui. Reason: please use CODE button for code formatting
Viewing 1 replies (of 1 total)
  • Hi,

    Do you have an issue with the load_template function that you’re trying to resolve? The $s variable is potentially set by the extract() call, which is exposing the $wp_query parameters to your template files.

Viewing 1 replies (of 1 total)

The topic ‘$s in load_template function’ is closed to new replies.