我們常常在宣傳網站手機版的時候使用二維碼推廣方式,用戶只需要掃描二維碼,就可以訪問該網站。但是微信掃描二維碼之后卻將網站進行了轉換,造成網站樣式表、js等功能丟失,使得用戶用微信掃描網站二維碼變得凌亂起來。那么該如何解決這個問題呢?
其實早期微信是沒有增加這個轉換的,但是后來由于眾多使用微信的大號進行各種推廣,微信為了安全起見,采用了先由微信轉換一下格式,然后由用戶選擇是否訪問原網頁。
1、掃描網站二維碼之后的效果是這樣的:
微信會提示“該網頁非微信官方網頁,將由微信轉換為手機預覽模式。”,如果點擊“繼續訪問”按鈕,就會進入到微信轉換的界面。而那個“訪問原網頁”的鏈接非常小,所以大多數用戶都會點擊上面的按鈕。
2、兩種解決辦法
方法1:使用公眾賬號的二維碼進行宣傳,然后為關注用戶發送手機網站鏈接,這種方法就繞過了這個轉換過程。
方法2:用程序判斷是否是微信轉換界面,然后推不同的提示頁面。
我們先獲取一下HTTP_USER_AGENT,得到的數據為:
mozilla/4.0 (compatible; msie 6.0; windows nt 5.1; sv1; .net clr 1.1.4322; tencenttraveler)
這里最有用的信息就是最后的“tencenttraveler”了,它表示微信使用這個瀏覽器來轉換你的網頁,所以只需判斷是否包含“tencenttraveler”,就可以顯示不同的頁面了。
判斷代碼如下:
<?php
$agent = strtolower($_SERVER['HTTP_USER_AGENT']);
if (strpos($agent, 'tencenttraveler') === false){
echo " 不是微信瀏覽";
} else {
echo "<img width='100%' src='http://m.wsalc.com/images/tiao.jpg' alt="請點擊查看原網頁來瀏覽網站">";
}
?>
界面如下: