Custom theme folder

时间:2013-06-02 作者:Denis de Bernardy

是否有人知道WP_PLUGIN_DIRWP_PLUGIN_URL 对于我可以在中定义的主题wp-config.php, 还是我一直在创建一个mu插件并注册一个新的主题目录?

1 个回复
最合适的回答,由SO网友:birgire 整理而成

默认主题目录的注册方式如下wp-settings.php

// Register the default theme directory root
register_theme_directory( get_theme_root() );
在哪里

function get_theme_root( $stylesheet_or_template = false ) {
        global $wp_theme_directories;

        if ( $stylesheet_or_template && $theme_root = get_raw_theme_root( $stylesheet_or_template ) ) {
                // Always prepend WP_CONTENT_DIR unless the root currently registered as a theme directory.
                // This gives relative theme roots the benefit of the doubt when things go haywire.
                if ( ! in_array( $theme_root, (array) $wp_theme_directories ) )
                        $theme_root = WP_CONTENT_DIR . $theme_root;
        } else {
                $theme_root = WP_CONTENT_DIR . \'/themes\';
        }

        return apply_filters( \'theme_root\', $theme_root );
}
功能get_theme_root()get_raw_theme_root() 似乎用于其他与主题相关的功能。

我看不到这里使用了任何与主题相关的预定义常量,因此我认为您需要一个插件;-)

也许和全球$wp_theme_directories 也许能帮你找到什么地方?

结束

相关推荐

是否缓存了GET_TEMPLATE_DIRECTORY_URI?

我对wordpress的安装有点问题。基本上,我有两台服务器:test.dev 和staging.dev.设置(使用hosts文件),我刚刚复制了test.dev WordPress安装转移到临时服务器。在我的电脑上效果很好,但在没有test.dev 没有加载任何CSS或图像。我调查了一下,每一条路径仍在引用test.dev. 我在中有此功能functions.php:function route_static_path($path) { echo get_template_dir