我真的很喜欢为移动设备切换主题的想法,我的网站上有几个功能都使用jetpack,所以我想,为什么不把它也用于移动设备呢。Jetpack附带了一项功能,可以为移动设备切换主题,但只能使用它们的主题并调整一些内容,如bg颜色等。。我想知道是否有可能完全改变这个主题?所以,使用jetpack来检测设备,但使用您自己的移动主题?在任何更新之后都会保持这样。
编辑/更改Jetpack Mobile主题
我看到了三种编辑Jetpack Mobile主题的方法:
1. Use Jetpack\'s Custom CSS module
Jetpack包含一个名为“自定义CSS”的模块,允许您添加自己的自定义CSS,而无需编辑主题样式表。自定义CSS编辑器(在“外观>编辑CSS”下)还包括一个选项,可以在Jetpack的移动主题中包含此自定义CSS。因此,您可以通过在其中添加自定义CSS代码来定制移动主题的外观。您可以使用.mobile-theme
类以仅针对移动主题。
2. Add your own custom stylesheet to the Mobile theme
如果不想使用自定义CSS模块,可以只在Jetpack的移动主题中加载特定的样式表,如下所示:// Check if we are on mobile
// Props @saracannon http://ran.ge/2012/12/05/parallax-and-mobile/
function tweakjp_is_mobile() {
// Are Jetpack Mobile functions available?
if ( ! function_exists( \'jetpack_is_mobile\' ) )
return false;
// Is Mobile theme showing?
if ( isset( $_COOKIE[\'akm_mobile\'] ) && $_COOKIE[\'akm_mobile\'] == \'false\' )
return false;
return jetpack_is_mobile();
}
// Let\'s add our custom stylesheet
function tweakjp_maybe_add_css() {
// On mobile?
if ( tweakjp_is_mobile() ) {
wp_register_style( \'custom-mobile\', plugins_url( \'style.css\', __FILE__) );
wp_enqueue_style( \'custom-mobile\' );
}
}
add_action( \'wp_enqueue_scripts\', \'tweakjp_maybe_add_css\' );
3. Edit Jetpack\'s plugin files to make your changes
没有限制,但当您更新到下一版本的Jetpack时,所有更改都将被覆盖。我不推荐它。我知道这是一个老生常谈的问题,如果有人还在看的话——你不必激活jetpack移动主题模块来访问内置在插件中的移动检测,也不需要编辑jetpack插件文件,让事情更安全地更新。
//load JetPack Mobile Detection
$detect = new Jetpack_User_Agent_Info(); print_r($ua_info);
//Check if we are on Windows Phone 8 (Yes that\'s right, Windows Phone)
function is_wp8_detect() {
global $detect;
if ($detect->is_windows_phone_8()){
return true;
}
}
也就是说,有了这个功能,我现在可以在整个主题或插件中只为Windows Phone用户做任何我想做的事情。我不认为以下评论是在Jetpack插件中,指的是加载所有模块类的文件,包括上面代码中需要的内容;所以要小心。
//@todo:只包括课堂之类的东西。jetpack同步。php,如果我们已连接。