给wptouch绑定单独域名最终解决方案

付费节点推荐


免费节点


节点使用教程


最后感觉还是唐磊方法好,就是我们要实现m.bcoder.cn访问的wordpress自动加载wptouch主题。

wptouch原理是通过USER_AGENT判断用户的浏览器和系统类型,如果为手机等移动终端则加载wptouch主题。
解决思路是,当 浏览访问的是m.bcoder.cn,就将USER_AGENT设为一个新值。wptouch根据这个新值来选择加载wptouch主题。所以我们首先要做的就是在后台设置中添加一个新值。(笔者设置的是"wangzheng")
之后,我们就开始修改系统文件了。编辑 core/class-wptouch-pro.php 找到is_supported_device()方法,我们需要在这个方法的最前面添加一下代码:

[cc lang="php"]
$domain = $_SERVER['HTTP_HOST'];
if ($domain == 'm.bcoder.cn')
$_SERVER['HTTP_USER_AGENT']='wangzheng';
[/cc]

接下来的USER_AGENT判断就交给wptouch了,具体如下图
20151205222548
笔者没学过php,也是真心看不懂。。。

最后我们需要做的就是,为wordpress添加新的domain,以上这么做只是解决了首页问题,其他页面链接需要通过修改wp-config.php文件实现。我们在此文件中添加以下代码。

[cc lang="php"]
//multiple domain set wangzheng begin
$wangzhenghome = 'http://'.$_SERVER['HTTP_HOST'];    //这是m.bcoder.cn域名路径
$wangzhengsiteurl = $wangzhenghome;
define('WP_HOME', $wangzhenghome);
define('WP_SITEURL', $wangzhengsiteurl);    //只需将WP_HOME和WP_SITEURL设置成m.bcoder.cn即可。
//multiple domain set wangzheng end
[/cc]

这样我们就为wordpress添加了新的域名,坏处是严重影响SEO。。。暂且不管那么多了!

另外我之前js跳转方法(reference:http://bcoder.clbug.com/?p=1429)有网友反映会有一个预览条,其实我当初早就想去掉了 。今天刚好发现了。在wptouch\themes\foundation\modules\base\preview-bar.php  中定义的。清空此文件就行,删除会报错!!!切记。还有地址后面的?wptouch_preview_theme=enabled等。。貌似要去掉的话,也在此目录下的文件中可以找到方法。我就不继续研究了。现在有了新方法,这个也就不需要了!

未经允许不得转载:Bcoder资源网 » 给wptouch绑定单独域名最终解决方案

相关推荐

赞 (1)
分享到:更多 ()

评论 0

评论前必须登录!

登陆 注册