javascript - 使用referrer javascript从google获取查询参数

标签 javascript

是否可以从Google搜索中获取查询参数?

即如果有人用谷歌搜索自行车,网址就会变成:

https://www.google.es/search?q=bicycles......

如果您进入搜索结果并且有人点击您的页面,您将无法看到带有 document.referrer 的查询参数,它只会显示

 https://www.google.es/

有没有办法知道访问者在访问您的网站之前搜索了什么?

最佳答案

回复较晚,但我最近一直在做一些研究,并认为最终访问此页面的其他 stackoverflow 访问者可能会对这些信息感兴趣。

2016 年之前,当访问者使用服务器变量通过有机搜索访问您的网站时,您可以使用 PHP 从推荐数据中获取 url 参数:

function get_search_query(){
    $query = $_SERVER['QUERY_STRING'];
    return (strlen($query)? $query: 'none');
}

function get_search_query() {
    $query = false;
    $referrer = $_SERVER['HTTP_REFERER'];
    if (!empty($referrer)) {
        //Parse the referrer URL
        $parts_url = parse_url($referrer);
        // Check if a query string exists
        $query = isset($parts_url['query']) ? $parts_url['query'] : '';
        return (strlen($query)? $query: false);
    }
    return $query;
}

但是,Google 和其他搜索引擎从此无法从自然搜索中查看查询参数,并且任何类似上述的脚本都会返回空白查询字符串。无论您是否登录 Google,都是如此。

这很不幸,因为这会删除有值(value)的信息,例如用于查找您网站的关键字。这些信息仍然可以在 Google Search Console 中找到,但这提供了 Google 对您应该看到的内容的解释,并且不像访问者在自然搜索后点击页面时立即获取信息那么直接。

我不知道有什么方法仍然可以获得有机查询参数。

关于javascript - 使用referrer javascript从google获取查询参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42751755/

相关文章:

javascript - HTML5 <video> 回调?

javascript - 在 Angular 2 中如何保留查询参数并向路由添加额外的查询参数

javascript - 如何使用 Stripe Payment Intents 提供账单详细信息以确保 SCA 合规性?

javascript - 将数据从 javascript 文件传递​​到 Nodejs 服务器 - Nodejs

javascript - Backbone 集合 sortBy

javascript - 从 jQuery 对话框标题中删除附加图像

javascript - 在 JS 中查找路线最快的方法是什么?

javascript - 如何在JS中根据子值获取父级JSON对象

javascript - AngularJS - 在访问 DOM 的自定义指令中设置 Controller 的 $scope 变量

使用鼠标按住 Javascript 可以更快地增加值