模板页面的规范链接

时间:2012-05-17 22:46:50

标签: php javascript templates canonical-link

我可以将哪些PHP或Javascript代码用于模板上的规范链接?我尝试使用下面的PHP代码,因为它不起作用:

<?php
$qs = $_SERVER['QUERY_STRING'];
$page = $_SERVER['REQUEST_URI'];
if(strlen(trim($qs))==0){
 // No query string is present
 $canlink = "<link rel='canonical'
href='http://www.hea-employment.com' . $page . />";
}else{
 // Query string is present
 $canlink = "<link rel='canonical'
href='http://www.hea-employment.com' . $page . "?" . $qs . />";
}
echo $canlink;
?>

2 个答案:

答案 0 :(得分:1)

更改

$canlink = "<link rel='canonical' href='http://www.hea-employment.com' . $page . />";

$canlink = "<link rel='canonical' href='http://www.hea-employment.com{$page}'/>";

$canlink = '<link rel="canonical" href="http://www.hea-employment.com' . $page . '"/>';

不知道究竟什么不起作用,这就是我能发现/假设的问题。

您的代码将生成:<link rel='canonical' href='http://www.hea-employment.com' . abitrary . />因为您永远不会关闭第一个“。只是.字符而不是连接。

第二个区块的问题相同。

答案 1 :(得分:0)

1)你的报价搞砸了。

2)为什么要创建一个自我的规范链接?以下是我建议您使用的内容:

<?php

$qs = $_SERVER['QUERY_STRING'];
$page = $_SERVER['REQUEST_URI'];
$canlink = '';

// If query string is present, add a canonical link to avoid duplicate content
if (strlen(trim($qs))) {
    $canlink = "<link rel='canonical' href='http://www.hea-employment.com$page' />";
}
echo $canlink;