我的网站已连接到Google搜索控制台API。 我想提一个返回谷歌网站平均位置的查询。 可能吗?我想获得包含所有关键字的平均值? 有没有人知道这个问题? 服务器端是用php编写的。 我可以查询返回我的网站位置,但只能通过我需要选择的特定关键字。 例如:
$query = new Google_Service_Webmasters_SearchAnalyticsQueryRequest();
$query->setSearchType('web');
$query->setDimensions(array('query', 'country', 'device'));
$query->setStartDate($StartDate);
$query->setEndDate($EndDate);
$filterDevice = new Google_Service_Webmasters_ApiDimensionFilter();
$filterDevice->setDimension('device');
$filterDevice->setOperator('equals');
$filterDevice->setExpression('DESKTOP');
$filterCountry = new Google_Service_Webmasters_ApiDimensionFilter();
$filterCountry->setDimension('country');
$filterCountry->setOperator('equals');
$filterCountry->setExpression('fr');
*******THIS IS FOR A SPECIFIC KEY WORD! ********
$filterQuery = new Google_Service_Webmasters_ApiDimensionFilter();
$filterQuery->setDimension('query');
$filterQuery->setOperator('equals');
$filterQuery->setExpression($keyWord);
************************************************
$filtergroup = new Google_Service_Webmasters_ApiDimensionFilterGroup();
$filtergroup->setGroupType('and');
//$filtergroup->setFilters(array($filterDevice,$filterCountry,$filterQuery));
$filtergroup->setFilters(array($filterDevice,$filterCountry));
$query->setDimensionFilterGroups(array($filtergroup));
$response = $webmaster->searchanalytics->query($clientSite,$query);
如果我不发送任何关键字(查询),则回复是很多关键字和每个关键字的位置,如图所示
{
"0": {
"clicks": 3164,
"ctr": 0.373686075351,
"impressions": 8467,
"keys": {
"0": "KEYWORD_EXAMPLE",
"1": "fr",
"2": "DESKTOP"
},
"position": 1.00035431676
},
"1": {
"clicks": 267,
"ctr": 0.765042979943,
"impressions": 349,
"keys": {
"0": "KEYWORD_EXAMPLE",
"1": "fr",
"2": "DESKTOP"
},
"position": 1.03438395415
},
"2": {
"clicks": 204,
"ctr": 0.0491684743312,
"impressions": 4149,
"keys": {
"0": "KEYWORD_EXAMPLE",
"1": "fr",
"2": "DESKTOP"
},
"position": 6.57869366112
},
"3": {
"clicks": 135,
"ctr": 0.308924485126,
"impressions": 437,
"keys": {
"0": "KEYWORD_EXAMPLE",
"1": "fr",
"2": "DESKTOP"
},
"position": 1
},
TNX !!! :)
答案 0 :(得分:1)
我弄清楚了......有些$filters
做到了。如果您将发送一个没有过滤器的查询,它将工作。
例如:
$query = new Google_Service_Webmasters_SearchAnalyticsQueryRequest();
$query->setSearchType('web');
$query->setStartDate($StartDate);
$query->setEndDate($EndDate);
$filtergroup = new Google_Service_Webmasters_ApiDimensionFilterGroup();
$filtergroup->setGroupType('and');
//***REDUCE THIS LINE! -> $filtergroup->setFilters(array($filterDevice));***//
$query->setDimensionFilterGroups(array($filtergroup));
$response = $webmaster->searchanalytics->query($clientSite,$query);
结果是:
"0": {
"clicks": 14635,
"ctr": 0.0629018670701,
"impressions": 232664,
"keys": null,
"position": 15.502961352
}
我知道这是我的正确位置,因为您可以在Google网站的信息中心上看到它。 (搜索控制台GUI)。