WP_Theme::get( string $header ): string|array|false

Gets a raw, unformatted theme header.

Description

The header is sanitized, but is not translated, and is not marked up for display.
To get a theme header for display, use the display() method.

Use the get_template() method, not the ‘Template’ header, for finding the template.
The ‘Template’ header is only good for what was written in the style.css, while get_template() takes into account where WordPress actually located the theme and whether it is actually valid.

Parameters

$headerstringrequired
Theme header. Name, Description, Author, Version, ThemeURI, AuthorURI, Status, Tags.

Return

string|array|false String or array (for Tags header) on success, false on failure.

Source

public function get( $header ) {
	if ( ! isset( $this->headers[ $header ] ) ) {
		return false;
	}

	if ( ! isset( $this->headers_sanitized ) ) {
		$this->headers_sanitized = $this->cache_get( 'headers' );
		if ( ! is_array( $this->headers_sanitized ) ) {
			$this->headers_sanitized = array();
		}
	}

	if ( isset( $this->headers_sanitized[ $header ] ) ) {
		return $this->headers_sanitized[ $header ];
	}

	// If themes are a persistent group, sanitize everything and cache it. One cache add is better than many cache sets.
	if ( self::$persistently_cache ) {
		foreach ( array_keys( $this->headers ) as $_header ) {
			$this->headers_sanitized[ $_header ] = $this->sanitize_header( $_header, $this->headers[ $_header ] );
		}
		$this->cache_add( 'headers', $this->headers_sanitized );
	} else {
		$this->headers_sanitized[ $header ] = $this->sanitize_header( $header, $this->headers[ $header ] );
	}

	return $this->headers_sanitized[ $header ];
}

Changelog

VersionDescription
3.4.0Introduced.

User Contributed Notes

You must log in before being able to contribute a note or feedback.