Wordpress Mobile - 更改部分 URL 而不是重定向到首页? [英] Wordpress Mobile - Change Part of the URL Instead of Redirecting to the Front Page?

查看:57
本文介绍了Wordpress Mobile - 更改部分 URL 而不是重定向到首页?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我被要求在一个我没有帮助建立的客户站点上做一些维护工作.该网站是用 Wordpress 构建的,移动设备上的任何用户都将被重定向到更适合移动设备的网站版本.问题是,如果移动用户单击原始站点(主页、内页等)的任何链接,无论是什么链接,他们总是会被重定向到移动站点的首页.我想要做的是将当前 URL 的一部分从 .ca 替换为 .mobi,以便移动用户直接重定向到原始页面的移动版本,而不是移动主页.

I've been called to do some maintenance work on a client site that I didn't help build. The site is built with Wordpress, and any user on a mobile device will be redirected to a more mobile-friendly version of the site. The problem is that if the mobile user clicks any link to the original site (home page, inner page, etc), no matter what link it is, they always get redirected to the front page of the mobile site. What I am trying to do is replace part of the current URL from .ca to .mobi so that the mobile users get redirected straight to the mobile version of the original page instead of the mobile home page.

我查看了如何用JavaScript? 并尝试了 Matt 和 Juan 的建议,但它们都没有奏效,反而导致错误.我希望有人能在这里帮助我.

I looked at how to replace part of the URL with JavaScript? and tried Matt and Juan's suggestions, but neither of them worked and instead cause errors. I'm hoping someone can help me here.

目前,这是 header.php 中的代码,用于检测用户是否在移动设备上,

Currently, this is the code in header.php that detects if the user is on a mobile device,

    /* --- DETECT MOBILE BROWSER ---*/

$useragent=$_SERVER['HTTP_USER_AGENT'];
if(preg_match('/android|avantgo|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|symbian|treo|up\.(browser|link)|vodafone|wap|windows (ce|phone)|xda|xiino/i',$useragent)||preg_match('/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|e\-|e\/|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(di|rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|xda(\-|2|g)|yas\-|your|zeto|zte\-/i',substr($useragent,0,4))){
    header('Location: http://sitenamehere.mobi');
}
/* --- END DETECT MOBILE BROWSER ---*/

推荐答案

位置标头需要包含完整的 URL - 目前它只包含主页的 URL.因此,您需要获取当前 URL 并将 .ca 替换为 .mobi,然后将位置标头更改为此.这应该是正确的:

The location header needs to contain the full URL - currently it only contains the URL of the homepage. Therefore you need to obtain the current URL and replace the .ca with .mobi, then change the location header to this. This should be along the right lines:

header('Location: ' . str_replace('.ca', '.mobi', $_SERVER["SERVER_NAME"] . $_SERVER["REQUEST_URI"]));

这篇关于Wordpress Mobile - 更改部分 URL 而不是重定向到首页?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆