织梦移动适配PHP获取当前页面URL地址方法

在做织梦网站开发时,会遇到获取当前URL并做PHP判断。比如地区站群PC端的移动适配功能,下面提供PHP通用移动端适配方法。

PC首页路径:www.zuola.net

移动端首页路径:m.zuola.net

地区PC首页路径:beijing.zuola.net

地区移动端首页路径:beijing.m.zuola.net

这里地区移动端采用三级域名的形式实现,当然也可以用目录的形式,一些分类信息网站就是采用:

m.zuola.net/beijing/

至于地区移动端做目录还是三级域名哪种方案好,这个只要做好适配,效果是一样的,影响排名的还是PC端,个人还是倾向三级域名的方案。写URL重写也简单些。

 先看下面代码

<?php
//测试网址:http://localhost/blog/testurl.php?id=5
//获取域名或主机地址 
echo $_SERVER['HTTP_HOST']."<br>"; //输出 localhost
//获取网页地址 
echo $_SERVER['PHP_SELF']."<br>"; //输出 /blog/testurl.php
//获取网址参数 
echo $_SERVER["QUERY_STRING"]."<br>"; //输出 id=5
//获取用户代理 
echo $_SERVER['HTTP_REFERER']."<br>"; 
//获取完整的url
echo 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];
echo 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'].'?'.$_SERVER['QUERY_STRING'];
//输出 http://localhost/blog/testurl.php?id=5
//包含端口号的完整url
echo 'http://'.$_SERVER['SERVER_NAME'].':'.$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"]; 
//输出 http://localhost:80/blog/testurl.php?id=5
//只取路径
$url='http://'.$_SERVER['SERVER_NAME'].$_SERVER["REQUEST_URI"]; 
echo dirname($url);
//输出 http://localhost/blog/testurl.php?id=5
?>

移动端获取当前URL适配

canonical是声明权威地址,即以PC的地址参与排名。如做了伪静态,

 

PC端文章路径:www.zuola.net/view-1.html

移动端文章路径:m.zuola.net/view-1.html

织梦移动端文章内容页的适配写法如下,把下面代码放在</head>之前

<link rel="canonical" href="{dede:php}$url= str_replace("m.","",$_SERVER['HTTP_HOST']); echo "http://".$url."/view-";{/dede:php}{dede:field.id/}.html"/>