子域名的子主题不同

时间:2014-09-15 作者:r0tterz

我有一个网站,我正在尝试找出如何基于子域应用不同的子主题。应用儿童主题应该不难,更重要的是。htaccess魔术,我有点不确定。

我想要的是一个网站,上面写着:

example.com/red/
example.com/blue/
红色和蓝色是不同的儿童主题。但仍可以通过以下方式访问所有链接:

example.com/red/blog/
example.com/blue/blog/
对我来说,多站点似乎有点过头了,因为这些站点会有完全相同的内容、不同的样式表和不同的图像。我认为add\\u rewrite\\u rule()可能更适合这种情况。但regex对我来说是拉丁语。

2 个回复
SO网友:mrwweb

我鼓励您更进一步,避免使用URL来确定主题。(仅供参考,您描述的是子文件夹,而不是红色的子域。example.com。)

不这样做的原因是为了避免duplicate content issues 使用搜索引擎。从技术上讲,您可以绕过它们,但这也会让访问者感到困惑,因为他们有理由期望不同的URL加载不同的内容。

相反,我鼓励您研究一个“主题切换器”插件。我对其中任何一个都不熟悉,但这里有一些可以让您开始学习的内容:

如果是我,我会仔细考虑使用localstorage 有条件地加载一个特定的“皮肤”样式表,该样式表只包含您想要的颜色更改。

SO网友:Rob

我确实同意mrwweb关于重复内容的观点,我不太清楚您为什么要这样做,但是,为了便于讨论。。。

您可以获取URL,然后从函数中将正确的样式表排入队列。php

类似这样(未经测试):

<?php
    function mytheme_stylesheet_enqueue(){        
        global $post;
        $my_url = get_page_link($post->ID);
        if (strpos($my_url,\'red\') !== false) {
            wp_register_style( \'red-stylesheet\', get_stylesheet_directory_uri() . \'/red-style.css\', array(), \'\', \'all\' );
            wp_enqueue_style( \'red-stylesheet\' );
        }
        if (strpos($my_url,\'blue\') !== false) {
            wp_register_style( \'blue-stylesheet\', get_stylesheet_directory_uri() . \'/blue-style.css\', array(), \'\', \'all\' );
            wp_enqueue_style( \'blue-stylesheet\' );
        }
    }
    mytheme_stylesheet_enqueue();
?>

结束

相关推荐

如何使我的.htaccess文件可由wp-admin写入?

我的ISP更改了Wordpress博客的主机,一切都停止了。有一个DNS问题,但他们解决了这个问题,但除主页外的每个页面都返回了404错误。当我查看permalinks页面时(/wp-admin/options-permalinks.php) 在wp admin中,我看到了以下内容:如果您的。htaccess文件是可写的,我们可以自动执行此操作,但事实并非如此,这些是您应该在中包含的mod\\u重写规则。htaccess文件。在字段中单击,然后按CTRL+a组合键选择全部。添加它列出的内容(通过我的ISP