首页 > 资源分享 > 正文
PC网站与移动网站适配,Meta标注、移动跳转终结篇

随着智能手机越来越普遍,更多的站点添加了手机站的功能,但是对于搜索引擎而言,重复的内容或多或少的影响着一条url的权重,今天就来讲讲pc站与移动站适配的方法!

一、首页适配
1、以下代码填充至pc站网站,具体url根据自己实际情况修改

<!– 载入UA判断的js –>
<script src=”http://static.zhangge.net/wp-content/themes/HotNewspro/js/uaredirect.js” type=”text/javascript”></script>
<!–移动端访问首页跳转到移动首页–>
<script type=”text/javascript”>uaredirect(“http://m.zhangge.net/”);</script>
<!–百度移动适配META申明–>
<meta name=”mobile-agent” content=”format=xhtml;url=http://m.zhangge.net/” />
<!–谷歌、雅虎等移动META申明–>
<link href=”http://zhangge.net/go/?url=http://m.zhangge.net/” rel=”alternate” media=”only screen and (max-width: 1000px)” />

 

2、以下代码填充至移动站点,其他以上为例!

<!– 载入UA判断的js –>
<script src=”http://static.zhangge.net/wp-content/themes/MobilePack/uaredirect.js” type=”text/javascript”></script>
<!–非移动端访问将跳转至PC页–>
<script type=”text/javascript”>uaredirect(“http://zhangge.net”);</script>
<!–谷歌、雅虎等移动META反向申明–>
<link href=”http://zhangge.net” rel=”canonical” />

备注:此方法仅适用于首页跳转,但是一个网站不可能只有一个首页,还有更多的页面需要适配,参考下面的方法,另本文中所需要用到的js文件文章底部提供下载!

二、全站url动态适配

1、wordpress解决方案:

<?php global $wp;
<!– 获取当前页面地址 –>
$current_url = home_url(add_query_arg(array(),$wp->request));
<!– 将地址中的http://替换为http://m. –>
$target_url = str_replace(“http://”,”http://m.”,”$current_url”);
?>

<script src=”<?php bloginfo(‘template_directory’); ?>/js/uaredirect.js” type=”text/javascript”></script>
<script type=”text/javascript”>uaredirect(“<?php echo $target_url; ?>”);</script>
<meta name=”mobile-agent” content=”format=xhtml;url=<?php echo $target_url; ?>” />
<link href=”http://zhangge.net/go/?url=<?php echo $target_url; ?>” rel=”alternate” media=”only screen and (max-width: 1000px)” />

 

备注:以上代码pc站以及移动站通用,即pc站代码适配移动站,反之亦然,根据自己实际情况修改!

 

2、php程序站点通用代码:

2.1 php站点pc端代码,以下第一段如果应用在wordpress可以直接填写在当前主题的function.php中!

 

<?php
<!– 获取当前页面对应的移动页地址 –>
function curMobURL() {
$pageURL = ‘http’;
if ($_SERVER[“HTTPS”] == “on”) {$pageURL .= “s”;}
$pageURL .= “://m.”;$this_page = $_SERVER[“REQUEST_URI”];
if (strpos($this_page, “?”) !== false) $this_page = reset(explode(“?”, $this_page));
if ($_SERVER[“SERVER_PORT”] != “80”) {$pageURL .= $_SERVER[“SERVER_NAME”] . “:” .$_SERVER[“SERVER_PORT”] . $this_page;}
else {$pageURL .= $_SERVER[“SERVER_NAME”] . $this_page;}
echo $pageURL;
}
?>

<script src=”http://zhangge.net../PC/../uaredirect.js” type=”text/javascript”></script>
<script type=”text/javascript”>uaredirect(“<?php curMobURL(); ?>”);</script>
<meta name=”mobile-agent” content=”format=xhtml;url=<?php curMobURL(); ?>” />
<link href=”http://zhangge.net/go/?url=<?php curMobURL(); ?>” rel=”alternate” media=”only screen and (max-width: 1000px)” />

 

2.2 php站点移动端

 

<?php
<!– 获取当前页面对应的PC页地址 –>
function curPcURL() {
$pageURL = ‘http’;
if ($_SERVER[“HTTPS”] == “on”) {$pageURL .= “s”;}
$pageURL .= “://”;$this_page = $_SERVER[“REQUEST_URI”];
if (strpos($this_page, “?”) !== false) $this_page = reset(explode(“?”, $this_page));
if ($_SERVER[“SERVER_PORT”] != “80”) {$pageURL .= $_SERVER[“SERVER_NAME”] . “:” .$_SERVER[“SERVER_PORT”] . $this_page;}
else {$pageURL .= $_SERVER[“SERVER_NAME”] . $this_page;}
echo $pageURL;
}
?>

<script src=”http://zhangge.net../Mobile/../uaredirect.js” type=”text/javascript”></script>
<script type=”text/javascript”>uaredirect(“<?php curPcURL(); ?>”);</script>
<link href=”http://zhangge.net/go/?url=<?php curPcURL(); ?>” rel=”canonical” />

 

备注:
1、文章中所用到的js文件下载:uaredirect.js
2、此文转载自 http://zhangge.net/4369.html 原文还有aps以及js的更详细的解决方案,鉴于我自己使用不到所以没转载!

3、因为不喜欢用代码高亮,所以如果是直接复制代码测试不成功的,检查一下代码里面是不是有中文符号

文章评论

共有 0 条评论

Top