Different themes on one site

时间:2015-10-23 作者:baicrout

我正确地开发了自己的主题,到目前为止,我得到了:索引、页眉、页脚、函数和样式文件。随着我主题的推进,这个列表还会继续。但我正在考虑在这个网站上使用多个主题来处理完全不同的文件,我正在考虑对文件使用不同的名称,而不是原始名称,所以不要使用标题。php这将是布拉布拉。php等等。当然,里面有不同的数据。所以因此,我有非常重要的问题:

这种方法会不会在WP核心或类似的地方产生冲突?

2 个回复
SO网友:Mark Kaplun

你可能把事情弄得太复杂了。您可以使用template_include 过滤掉那个

add_filter( \'template_include\', \'wpse_206394_template\', 99 );

function wpse_206394_template( $template ) {

    if ( template should be blabla  ) {
        $new_template = locate_template( array( str_replace(\'.php\',\'-blabla.php\',$template) ) );
        if ( \'\' != $new_template ) {
            return $new_template ;
        }
    }

    return $template;
}
但是,通过正确使用模板层次结构,很可能可以获得相同的效果。

SO网友:Dan Gayle

您可以使用get_template_part 要将不同的文件加载到模板中,请使用所需的名称/slug的任意组合。对于儿童主题也很友好,如果您想要有多个不同的主题,这可能值得研究。

The documentation says:

Function Reference/get template part

将模板部分(而不是页眉、侧边栏、页脚)加载到模板中。使主题可以轻松地重用代码部分,并使子主题可以轻松地替换其父主题的部分。

也很容易使用:

# if you want to include blabla.php into your template
<?php get_template_part( \'blabla\' ); ?> 

相关推荐

Child-theme breaks site

所以,我有一个子主题,里面除了所需的CSS文件之外什么都没有。一旦我激活了这个儿童主题,我的整个网站就关闭了。最后我有两个问题:激活一个只有CSS的子主题怎么能破坏我的网站</我怎样才能回到我原来的主题</这些是网站给我的错误:Warning: require_once(/wp-content/themes/interio_child/admin/options-framework.php) [function.require-once]: 无法打开流:中没有此类文件或目录/wp-c