小麦子 发表于 2024-10-19 15:57:51

实现访客查看同一链接,PC端和移动端显示不同页面的PHP代码

有网友问如何实现访客访问同一链接,PC端和移动端看到的页面不一样页面,要求PC端正常显示,移动端展现落地页。之前有听说过别人使用这个样的功能,不仅屏蔽访客查看PC端,甚至屏蔽了移动端来访的蜘蛛,只对移动端的用户展现。倒是没有见过已经写好的代码,但想到自己做的dedecms上有类似的功能,即PC端调用某一模板,移动端调用另一模板,当然现在一些影视类CMS都有判断不同手机端跳转使用不同模板的功能,这里给一些需要此功能的站长吧。

以上只是部份演示图片,详细可以付费购买。
<script type="text/javascript">if (window.location.toString().indexOf('pref=padindex') != -1) {} else {
    if (/AppleWebKit.*Mobile/i.test(navigator.userAgent) || (/MIDP|SymbianOS|NOKIA|SAMSUNG|LG|NEC|TCL|Alcatel|BIRD|DBTEL|Dopod|PHILIPS|HAIER|LENOVO|MOT-|Nokia|SonyEricsson|SIE-|Amoi|ZTE/.test(navigator.userAgent))) {
      if (window.location.href.indexOf("?mobile") < 0) {
      try {
          if (/Android|Windows Phone|webOS|iPhone|iPod|BlackBerry/i.test(navigator.userAgent)) {
            window.location.href = "{dede:global.cfg_mobileurl/}/index.php";
          } else if (/iPad/i.test(navigator.userAgent)) {} else {}
      } catch(e) {}
      }
    }
}</script>
通过上述代码我们可以看到,是通过识别移动端设备的UA(如手机型号、操作系统)来实现跳转的,因此我们可以很简单的利用代码(dedecms的识别设备ua跳转代码)来实现我们要求的实现访客查看同一链接,PC端和移动端显示不同页面的功能。我们只需要将{dede:global.cfg_mobileurl/}/index.php替换成我们想要展现的页面的就可以了。
页: [1]
查看完整版本: 实现访客查看同一链接,PC端和移动端显示不同页面的PHP代码