我们可以有一个子域m.website吗。com对于移动用户,那些会自动重定向到它吗?
到底目的是什么?
我们可以有一个子域m.website吗。com对于移动用户,那些会自动重定向到它吗?
到底目的是什么?
您可以拥有子域,但无法可靠地检测移动用户。而你不应该。
wp-config.php
, 看看$_SERVER[\'HTTP_HOST\']
. 如果匹配m.example.com
, 将当前域强制为主域,并使用…const DOMAIN_CURRENT_SITE = \'m.example.com\';
…并过滤活动主题:add_filter( \'stylesheet\', function( $stylesheet ) {
if ( \'m.example.com\' === DOMAIN_CURRENT_SITE )
return \'mobile-theme\';
return $stylesheet;
});
设置重定向/wp-admin/
和wp-login.php
, 因此,作者不能在移动网站上写作。wp_is_mobile()
, 这是令人尴尬的天真。使用移动设备并不意味着使用小屏幕或低带宽。
独立的子域已经成为过去。当浏览器无法处理media queries, 移动设备都很小,速度很慢。这不再是事实,所以请不要开始建造恐龙。
你应该考虑让你的网站完全响应,移动网站的子域已经成为过去,但一些大型网站仍然依赖它。
不是因为他们想要一个移动网站,而是因为他们的一些主要网站功能还不是移动设备应该处理的。
我们现在正处于一个应用程序(此处为Web应用程序)独立于平台的阶段,而不管它们在哪个设备上运行。
您不能在同一安装上使用其他主题,但;“主题”;毕竟它只是一个抽象,它可以由无限多个完全不同的模板组成,所以。。。你所能做的就是欺骗Wordpress,使其认为这是同一个主题。有点古怪,但在其他方面相当容易。
大警告:如果你想安装一个现成的主题,可能不值得这么麻烦,很有可能一些组件会坏掉。另一个警告:URL将变得重复,因此您可能需要正确设置wp config来说明这一点,或者动态重写它们,或者只设置规范
但是,如果它是专门制作的,或者是一个非常简单、制作精良的主题,或者只是原型设计,那么它会很好地工作。
所以你有了新的子域。这里需要做的就是创建一个索引。php,其中一行指向主安装:require(\'/your/path/to/wp/wp-blog-header.php\' );
已经取得了巨大的进步!此时,您的子域将镜像您的网站。
现在您想在那里显示其他内容。将此添加到您的函数中。php:
add_filter( \'template_include\', \'subdomain_theme\', 99 );
function subdomain_theme( $template ) {
$uri = $_SERVER[\'SERVER_NAME\'];
if (strpos($uri,\'yoursubdomain.\') !== FALSE) {
$new_template = \'/your/path/to/wp/wp-content/themes/your-subdomain-theme/index.php\';
if ( \'\' != $new_template ) {
return $new_template ;
}
}
return $template;
}
现在,您的“基本主题”已启动并运行!如果您想使用更多的模板而不仅仅是索引。php,您必须重建一些wp模板逻辑。因此,在主题目录中创建一个新文件并指向它。上面的相关行变为:
$new_template = \'/your/path/to/wp/wp-content/themes/your-subdomain-theme/whatever.php\';
不管是什么。php部分指向每个实际模板:if(is_single()) {include(\'/home/standard.wp/wp-content/themes/feeds/single.php\');}
elseif (is_home()) { // ... easy from here
还有你的子域独立主题在同一个无多站点wp实例上运行。我真的很喜欢为移动设备切换主题的想法,我的网站上有几个功能都使用jetpack,所以我想,为什么不把它也用于移动设备呢。Jetpack附带了一项功能,可以为移动设备切换主题,但只能使用它们的主题并调整一些内容,如bg颜色等。。我想知道是否有可能完全改变这个主题?所以,使用jetpack来检测设备,但使用您自己的移动主题?在任何更新之后都会保持这样。