現在的網頁都使用了響應式佈局,對於不同的裝置,使用媒體查詢自動適配裝置,但是這對程式碼的編寫較為複雜,有些甚至需要使用指令碼來完成的功能,那麼我們完全可以使用兩個主題模版,來分別在移動端和 PC 端顯示。

在 WordPress 我們也有相關的方法來實現這樣的功能,請看下面的程式碼:
- //根據訪問裝置切換 WordPress 主題
- function ws_switch_theme($theme){
- global $is_IE;
- if($is_IE){
- preg_match('/MSIEs(d).0;/', $_SERVER['HTTP_USER_AGENT'], $matches);
- $IEversion = $matches[1];
- if($IEversion=6){
- $theme='twentyten';
- }
- if($IEversion=7){
- $theme='twentyeleven';
- }
- if($IEversion=8){
- $theme='twentytwelve';
- }
- }
- if(wp_is_mobile()){
- $theme='twentytwelve';
- }
- return $theme;
- }
- add_filter('template','ws_switch_theme');
- add_filter('stylesheet','ws_switch_theme');
你可以根據上面的程式碼自行修改,在何種裝置訪問時載入什麼主題。注意主題名字一定是主題資料夾名字,而不是後臺管理介面你看到的主題名字。
主題這個程式碼也不能直接扔進 functions.php 檔案中而是要做成一個外掛上傳啟用。
在這裡我用了
wp_is_mobile()
這個 WordPress 自帶函式來檢測移動裝置,不過這個很不準確,有很大可能不能正確判斷移動裝置。
不僅僅檢測移動裝置,而且檢測桌面瀏覽器版本。而且你也可再發揮下,稍稍改下程式碼,就能實現讓使用者自行選擇使用桌面網站還是移動網站並記住選擇。