为不同的参数设置特定的元标记

时间:2014-10-25 19:39:32

标签: php html metadata web-crawler

我的索引页面有几个不同的参数,每个参数都显示不同但相似的内容。

例如,我有以下几页:

index.php?page1
index.php?page2
index.php?page3

是否可以为页面的每个类型设置特定的元标记,即使它们都链接到index.php?

例如,我是否可以为page1设置特定的描述元标记,为page2设置另一个元标记,为page3设置另一个元标记,以便Google可以抓取网站,但为每个参数接收不同的元标记。

3 个答案:

答案 0 :(得分:0)

是的,你可以。

只要您能够识别传递的参数,就可以根据需要自定义输出。

答案 1 :(得分:0)

您可以使用以下命令检查该请求的$_GET索引是否已设置:

if(isset($_GET['page1']) {
    // set metadata for page 1 ie:
    echo '<meta name="description" content="This is Page 1">';
} else if(isset($_GET['page2']) {
    // set metadata for page2 ie:
    echo '<meta name="description" content="This is Page 2">';
} else if(isset($_GET['page3']) {
    // set metadata for page 3 ie:
    echo '<meta name="description" content="This is Page 3">';
}

答案 2 :(得分:0)

如果您需要除描述之外的其他元标记,则可以执行以下操作

$meta_tags = array("page1" => array("author" => "author 1", "description" => "description 1"), "page2" => array("author" => "author 2", "description" => "description 2"));
foreach($meta_tags as $page => $meta)  {
    if(isset($_POST[$page])) {
        foreach($meta as $name => $value) {
            echo '<meta name="$name" content="$value">';
        }
     }
 }

对于我而言,这似乎是一种比Kypros更好的方法,因为代码行数较少而且不需要编写大量的IF条件