我正在使用CodeIgniter框架,语言由会话决定。
我编写了元数据,Facebook / Twitter抓取这些数据并分享页面:
echo "<meta name='twitter:card' content='summary' />";
echo "<meta property='og:title' content='" . $video->{set_lang("title")} . "' />";
echo "<meta property='og:description' content='" . $video->{set_lang("description")} . "' />";
echo "<meta property='og:image' content='" . (isset($video->image_url) ? site_url("thumbnail/" . $video->image_url) : $video->thumbnail) . "' />";
set_lang函数的作用是检查会话,如下所示:
function set_lang($var) {
$CI = & get_instance();
$lang = $CI->session->userdata('site_lang');
if ($lang == "english") {
return $var;
} else if ($lang == "zh_tw") {
return $var . "_tw";
} else if ($lang == "zh_cn") {
return $var . "_cn";
}
}
浏览器中的分享功能正常,但我也想通过移动应用程序分享链接。由于该应用程序不包含会话,因此无法检查语言。另外,如果我将参数放在链接中,例如:
http://example.com/video/view/1/english
那么我的分享链接也将固定语言。
有什么想法吗?非常感谢您的帮助。