is_page_template

函数


is_page_template ( $template = '' )
参数
  • (string|string[])
    $template
    The specific template filename or array of templates to match.
    Required:
    Default: (empty)
返回值
  • (bool) True on success, false on failure.
定义位置
  • wp-includes/post-template.php
    , line 1786
引入
2.5.0
弃用

Determines whether the current post uses a page template.

This template tag allows you to determine if you are in a page template.
You can optionally provide a template filename or array of template filenames
and then the check will be specific to that template.

For more information on this and similar theme functions, check out
the {@link Conditional Tags} article in the Theme Developer Handbook.

function is_page_template( $template = '' ) {
	if ( ! is_singular() ) {
		return false;
	}

	$page_template = get_page_template_slug( get_queried_object_id() );

	if ( empty( $template ) ) {
		return (bool) $page_template;
	}

	if ( $template == $page_template ) {
		return true;
	}

	if ( is_array( $template ) ) {
		if ( ( in_array( 'default', $template, true ) && ! $page_template )
			|| in_array( $page_template, $template, true )
		) {
			return true;
		}
	}

	return ( 'default' === $template && ! $page_template );
}