2016-05-10 20 views
1

私のウェブサイトはGoogle検索コンソールAPIに接続されています。 Googleのサイトの平均掲載順位を返すクエリを作成したいと考えています。 可能ですか?私はすべてのキーワードを含む平均を取得したいですか? 誰にでもこれに関する質問がありますか? サーバ側はphpで書かれています。 私は自分のウェブサイトの位置を返すクエリを作ることができますが、私は選択する必要のある特定のキーワードだけを使っています。例えば :私は、任意のキーワード(クエリ)を送信しない場合Google検索コンソールのapiで自分のサイトの平均掲載順位を取得するにはどうすればよいですか?

{ 
"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示すよう

$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); 

応答は、キーワードの多くは、それぞれの1の位置であります! :)

答えて

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)。

関連する問題