php正确获取伪静态不带参数网址添加canonical标签的方法
首先说下给网页添加canonical标签的好处都有啥,还是先来看看到底什么是canonical标签吧
canonical标签是HTML里面一个规范网址的元素,当我们的网页可以通过多个URL来访问的时候,我们可以通过canonical标签告诉搜索引擎这多个URL中的首选网址,也就是你这个网页内容想在搜索引擎中展现的指定网址,通常在搜索引擎看来,这个指定的页面是这多个URL中最有价值最规范的页面。摘自:百度百科
那么添加canonical标签标签都有什么好处呢,其实上面都说了 就是给网页添加一个权威网址,防止网址后面带一下参数,搜索引擎收录后出现太多重复网页,这样对SEO不是很友好,那么添加上canonical标签后就能解决这些问题。现在各大搜索引擎都是支持canonical标签的
如何获取本页的权威网址
今天来介绍下通过PHP获取不带参数网址的命令,把下面的命令添加在需要调用的PHP网页第一行
<?php function curPageURL() { $this_page = $_SERVER["REQUEST_URI"];//获取完整带参数网址 if (strpos($this_page, "?") !== false) // 只取 ? 前面的内容 { $this_pages = explode("?", $this_page); $this_page = reset($this_pages); } $pageURL .= 'http://ioozu.com' . $this_page;//把http://ioozu.com改成你的网址 return $pageURL; } ?>
然后在调用的网页<head>头部标签内添加
<link rel="canonical" href="<?php echo curPageURL();?>" />
这样就可以获取当前网页不带参数URL了,
这种方法是完美支持伪静态的网址也可以正确获取到
如果是URL使用rewrite规则的时候,$_SERVER['PHP_SELF'] 和 $_SERVER["REQUEST_URL"] 会返回错误的网址也就是xxx.php这样的网址
由于本站是zblog程序,就再来说下zblog下怎么获取不带参数网址
{php} function curPageURL() { $this_page = $_SERVER["REQUEST_URI"]; // 只取 ? 前面的内容 if (strpos($this_page, "?") !== false) { $this_pages = explode("?", $this_page); $this_page = reset($this_pages); } $pageURL .= 'http://ioozu.com' . $this_page; return $pageURL; } {/php}
调用方法
<link rel="canonical" href="{php} echo curPageURL();{/php}" />
在文章页面直接通过
<link rel="canonical" href="{$article.Url}" />
这一段代码即可,不需要添加上面一大段代码。其他页面一样需要添加上面的代码
点击链接加入群聊三群:751529538
点击链接加入群聊二群:376877156
点击链接加入群聊【路由器交流群:622891808已满】
本站附件分享,如果附件失效,可以去找找看
饿了么红包