WordPress函数register_theme_directory()

描述:

重新注册一个目录来放置主题

用法:

<?php register_theme_directory( $directory ) ?>

参数:

$directory

(string) (必填) 主题文件夹或WP_CONTENT_DIR中的文件夹的完整文件系统路径。不要包含尾斜杠。

默认值: None

示例:

<?php

/*
 * For directory structure like:
 * 
 * /my-plugin/
 * - /my-plugin.php
 * - /themes/
 *
 * You would put this in my-plugin.php.
 */
register_theme_directory( dirname( __FILE__ ) . '/themes' );

源文件:

/**
 * Register a directory that contains themes.
 *
 * @since 2.9.0
 *
 * @global array $wp_theme_directories
 *
 * @param string $directory Either the full filesystem path to a theme folder or a folder within WP_CONTENT_DIR
 * @return bool
 */
function register_theme_directory( $directory ) {
	global $wp_theme_directories;

	if ( ! file_exists( $directory ) ) {
		// Try prepending as the theme directory could be relative to the content directory
		$directory = WP_CONTENT_DIR . '/' . $directory;
		// If this directory does not exist, return and do not register
		if ( ! file_exists( $directory ) ) {
			return false;
		}
	}

	if ( ! is_array( $wp_theme_directories ) ) {
		$wp_theme_directories = array();
	}

	$untrailed = untrailingslashit( $directory );
	if ( ! empty( $untrailed ) && ! in_array( $untrailed, $wp_theme_directories ) ) {
		$wp_theme_directories[] = $untrailed;
	}

	return true;
}