0

我使用会话值来设置 facebook 元标记的内容:

<meta property="og:title" content="<?php print $_GET['p']; ?>"/>

当我查看网站的源代码时,html 显示如下:

<meta property="og:title" content="Alex Atalla"/>

这意味着它成功填充了标题元标记内容中的会话值。

但是当我使用 facebook 调试器时,它会说:

Object Missing a Required Value:    Object at URL 'http://www.palestinianz.com/' of type 'website' is invalid because a required property 'og:title' of type 'string' was not provided.

问题是什么 ?

4

2 回答 2

1

设置默认值

if(!isset($_GET['p'])){
$value = 'default value';
}else{
$value = $_GET['p'];
}

<meta property="og:title" content="<?php echo $value; ?>"/>

默认值将在您的主页 OG 上

于 2012-08-01T02:11:43.937 回答
0

好吧,他当然没有填写http://www.palestinianz.com/,因为 og:title 正在填写 URL 中的 p 参数 (GET['p'])。如果我访问http://www.palestinianz.com/?p=Tivie,则 og:title 会充满“Tivie”。

如果这是所需的效果,则将调试器指向人员页面。http://www.palestinianz.com/?p=Alex-Atalla什么的。

编辑:我想我明白你想要做什么。如果你不介意我的建议...

将您的代码更改为:

<meta property="og:title" content="<?php print (isset($_GET['p'])) ? $_GET['p'] : 'They Are Palestinians'; ?>"/>

然后阅读Apache Mod Rewrite

于 2012-08-01T02:05:26.860 回答