也许你可以使用模板重定向?我不太清楚它是如何工作的,但它可能值得研究。
function my_check_is_ie() {
global $is_winIE;
if ( ! $is_winIE ) return;
// load template for IE
include(TEMPLATEPATH . \'/IE_template.php\');
// or maybe?
if( is_home() ) include(TEMPLATEPATH . \'/IE_home.php\');
elseif( is_single() ) include(TEMPLATEPATH . \'/IE_single.php\');
// etc.
}
add_action(\'template_redirect\', \'my_check_is_ie\');
Edit- 好吧,我想我已经弄明白了。我还没有在野外测试过这个,所以请确保它先起作用!你必须把它变成一个插件,因为一旦加载了主题,就太晚了,无法切换主题。。。
<?php
/*
Plugin Name: randomkljsaduiyerth
*/
global $is_winIE;
if($is_winIE){
add_filter(\'template\', \'my_switch_themes\');
add_filter(\'stylesheet\', \'my_switch_themes\');
}
function my_switch_themes(){
// return the name of your IE theme
return \'my-IE-theme-Name-Here\';
}
Edit2-
如果您想让人们通过以下链接进行切换,可以添加另一个GET变量检查:http://yourdomain.com/?IE_version
if( isset($_GET[\'IE_version\']) ):
// add_filter here, or better yet if you\'re doing a number of checks,
// set a flag if any check is true and add_filter last
endif;
您还可以使用cookies存储主题首选项
// check the cookie
if( isset($_COOKIE["my_domain_cookie"]) )
// set the cookie
setcookie("my_domain_cookie", "My Cookie Val", time()+60*60*24*30);