相关疑难解决方法(0)

在PHP中检测浏览器语言

我使用以下PHP脚本作为我的网站的索引.

此脚本应包含特定页面,具体取决于浏览器的语言(自动检测).

此脚本不适用于所有浏览器,因此它始终包含index_en.php任何检测到的语言(问题的原因很可能是某些Accept-Language标头未被考虑的问题).

能否请您建议一个更强大的解决方案?

<?php
// Open session var
session_start();
// views: 1 = first visit; >1 = second visit

// Detect language from user agent browser
function lixlpixel_get_env_var($Var)
{
     if(empty($GLOBALS[$Var]))
     {
         $GLOBALS[$Var]=(!empty($GLOBALS['_SERVER'][$Var]))?
         $GLOBALS['_SERVER'][$Var] : (!empty($GLOBALS['HTTP_SERVER_VARS'][$Var])) ? $GLOBALS['HTTP_SERVER_VARS'][$Var]:'';
     }
}

function lixlpixel_detect_lang()
{
     // Detect HTTP_ACCEPT_LANGUAGE & HTTP_USER_AGENT.
     lixlpixel_get_env_var('HTTP_ACCEPT_LANGUAGE');
     lixlpixel_get_env_var('HTTP_USER_AGENT');

     $_AL=strtolower($GLOBALS['HTTP_ACCEPT_LANGUAGE']);
     $_UA=strtolower($GLOBALS['HTTP_USER_AGENT']);

     // Try to detect Primary language if several languages are accepted.
     foreach($GLOBALS['_LANG'] as $K)
     {
         if(strpos($_AL, $K)===0)
         return $K;
     }

     // Try to detect any language …
Run Code Online (Sandbox Code Playgroud)

php cross-browser browser-detection

141
推荐指数
7
解决办法
23万
查看次数

国际化和搜索引擎优化

我想将我的网站国际化,以便可以使用多种语言访问.将自动在请求数据中检测语言设置,并且可以在用户的​​设置中覆盖/存储在会话中.

我的问题是关于如何根据页面的URL显示基于语言的同一页面的各种版本.假设我们只是查看索引页面http://www.example.com/,默认为英文.现在,如果讲法语的人加载索引页面,我应该只保留URL http://www.example.com/,还是应该将其重定向到http://www.example.com/fr/

我试图弄清楚这在SEO方面有什么好处或后果.我不希望该网站的法语版本显示在google.com上,如果它阻止相同页面的英文版本显示在那里,但我希望它显示在google.fr中.

seo search-engine url-routing internationalization

18
推荐指数
1
解决办法
5164
查看次数

为SEO和可访问性构建HTML文档的最佳方法是什么?

什么是构建包含导航的html的推荐方法,因此它仍然是SEO'和可访问的.

例如,结构应该更像文档的结构:

  1. 跳到内容(链接,由CSS隐藏)
  2. 导航
  3. 内容
  4. 其他内容(右侧窗格等)

要么:

  1. 跳到导航(链接,由CSS隐藏)
  2. 内容
  3. 导航
  4. 其他内容(右侧窗格等)

显然CSS用于控制布局,但是机器人和屏幕阅读器忽略了CSS.

html seo accessibility

5
推荐指数
2
解决办法
2998
查看次数