使用PHP从URL中读取数据创建元标记

时间:2011-04-04 14:40:52

标签: php metadata meta-tags

我需要以下帮助:

我有一个PHP页面可以从数据库中读取并创建1000个页面 - 太多而无法为每个页面创建元数据。我需要从url中的信息创建元数据:

实例1:
http://dom.com/page.php/area1/type1
http://dom.com/page.php/area1/type2

实例2:
http://dom.com/page.php/area1/type1/name
http://dom.com/page.php/area1/type2/proper%20name

面积= 1-30(从列表中查找)
Type = 1-2(从提供的列表中查找)
对于名称

中的空格,Name = strip“%20”

填充: 实例1:

<title>Type, Area</title>
<meta content="Type, Area" name="description" 

实例2:

<title>Proper Name, Type, Area</title>
<meta content="Proper Name, Type, Area" name="description" />

任何帮助都要受到高度赞赏!

1 个答案:

答案 0 :(得分:1)

卡罗 这应该有效(将其粘贴到您的元标记应该是的位置):

<?php
$url = parse_url($_SERVER['REQUEST_URI']);
// if url has a path (/whatever/somethingelse)
if (isset($url['path'])
  {
  // split the path on every slash
  $a_path = explode('/', $url['path']);
  // reverse the order of the parts, join them with commas and replace %20
  $info = str_replace('%20', ' ', join(', ', array_reverse($a_path)));
  // print info to page
  print '<title>' . $info . '</title>';
  print '<meta content="' . $info . '" name="description" />';
  }
?>

虽然我同意在元描述中粘贴标题可能不是最好的主意。

修改:跟进您的评论:

// pop off the last value of the path parts
$info = str_replace('%20', ' ', array_pop($a_path));