URL パラメーターから動的にオープン グラフ メタ タグを生成しています。ページを表示すると、すべて問題なく表示され、ページ ソースを確認すると、すべてのメタ タグが完全に生成されます。それらを生成するために使用するコードは次のとおりです。
<?
$theSet = htmlspecialchars($_GET['id']);
$theTitle = htmlspecialchars($_GET['title']);
$theTitle1 = str_replace(" ","+",$theTitle);
$theTitle2 = str_replace(" ","-",$theTitle);
?>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" dir="ltr" lang="fr-FR">
<head>
<meta charset="utf-8" />
<link rel="canonical" href="http://www.novo-monde.com/photo-album.php?id=<? echo $theSet; ?>&titel=<? echo $theTitle1; ?>" />
<title><? echo "Album photo ".$theTitle.""; ?></title>
<meta name="description" content="Vous trouverez sur cette page toutes les photos à propos de l'<? echo "album photo ".$theTitle.""; ?>.">
<meta property='og:locale' content='fr_fr'/>
<meta property="og:title" content="<? echo "album photo ".$theTitle.""; ?>" />
<meta property="og:type" content="article" />
<meta property="og:description" content="Vous trouverez sur cette page toutes les photos à propos de l'<? echo "album photo ".$theTitle.""; ?>." />
<meta property="og:url" content="http://www.novo-monde.com/photo-album.php?id=<? echo $theSet; ?>&titel=<? echo $theTitle1; ?>" />
<meta property="og:image" content="<?getSetSing($theSet);?>"/>
</head>
ただし、これらの URL の 1 つを Facebook で共有したい場合に問題が発生します。実際、私がそれを共有すると、facebook は URL で定義された「タイトル」パラメーターを削除するようです。例を見てみましょう。次のURLがある場合:
http://www.novo-monde.com/photo-album.php?id=72157633440493567&title=Walensee
ページは問題なく表示され、ページ ソースのメタ タグは適切に定義されています。ただし、Facebook デバッグ ツールにこの URL を入力すると (Facebook では正しく動作しないため)、ツールは「タイトル」パラメーターを無視し、代わりに次のパラメーターを使用します。
http://www.novo-monde.com/photo-album.php?id=72157633440493567&titel=
「タイトル=」の後に定義されているものが無視されている理由を知っている人はいますか??? もうどこを見たらいいのかわからない…