对于那些好奇的人,我正在改变主题,但这个主题依赖于CSS3和HTML5,在IE 8或更低版本中显示得非常丑陋。-尤其是导航。
我想做的是保留我的旧主题,并将其仅用于IE用户,我假设如果这可以用于移动站点,也可以用于IE。只需安装另一个WP并复制内容会更容易吗(最简单的方法是什么?)。或者是否有一种方法,例如移动方法,可以将用户重定向到该主题。
我的计划是,用现有的主题创建第二个安装,然后以某种方式从主站点获取内容,并添加重定向IE用户的IF代码。这是可能的,还是有更简单的方法?
对于那些好奇的人,我正在改变主题,但这个主题依赖于CSS3和HTML5,在IE 8或更低版本中显示得非常丑陋。-尤其是导航。
我想做的是保留我的旧主题,并将其仅用于IE用户,我假设如果这可以用于移动站点,也可以用于IE。只需安装另一个WP并复制内容会更容易吗(最简单的方法是什么?)。或者是否有一种方法,例如移动方法,可以将用户重定向到该主题。
我的计划是,用现有的主题创建第二个安装,然后以某种方式从主站点获取内容,并添加重定向IE用户的IF代码。这是可能的,还是有更简单的方法?
也许你可以使用模板重定向?我不太清楚它是如何工作的,但它可能值得研究。
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);
我试图通过ID获取帖子的纯文本内容。我对这个函数进行了如下修改,但目前它什么也不返回。我看不出有什么问题。function get_the_excerpt_id($post_id) { $find = get_posts($post_id); $excerpt = $find->post_content; $excerpt = strip_tags($excerpt); $output = substr($excerpt,