3

これは、CoreReportingAPIを使用する最初の試みです。Hello Analyticsチュートリアルを無事に完了し、APIリクエストを問題なく作成しました。私の問題は、ディメンション、指標、フィルターを使用するためのAPIのクエリにあります。以下は、私が使用しているコードです。月の初日から当日の間に何人の訪問者がいるかを表示できます。次に、これらのうちどれだけがオーガニック検索からのものであるかを表示します。誰かが、より複雑なリクエストでAPIをクエリする例を教えてくれることを願っています。おそらく、ディメンション、指標、フィルターなどを含めて、行に表示します。どんな助けでも大歓迎です。以下はこれまでの私のコードです...

//コアレポートAPIを照会する

    function getResults($analytics, $profileId, $first_day, $today) {
         return $analytics->data_ga->get(
    'ga:' . $profileId,
    $first_day,
    $today,
    'ga:visits, ga:organicSearches');
    }

//結果を出力します

    function printResults(&$results) {
          if (count($results->getRows()) > 0) {
    $profileName = $results->getProfileInfo()->getProfileName();
    $rows = $results->getRows();
    $visits = $rows[0][0];
    $organic = $rows[0][1];
    print "<h1>$profileName</h1>";

    echo '<table border="1" cellpadding="5">';

   echo '<tr>';
   echo '<td>Visits</td>';
   echo '<td>Organic</td>';
   echo '</tr>';

   echo '<tr>'; 
   echo '<td>'. $visits . '</td>';
   echo '<td>'. $organic . '</td>';   
   echo '</td>';

   echo '</table>';

   } else {
        print '<p>No results found.</p>';
   }
}
4

2 に答える 2

3

コードは次のとおりです。

$optParams = array(
        'dimensions' => 'ga:date,ga:customVarValue1,ga:visitorType,ga:pagePath',
        'sort' => '-ga:visits,ga:date',
        'filters' => 'ga:visitorType==New',
        'max-results' => '100');

$metrics = "ga:visits";
$results = $analytics->data_ga->get(
'ga:' . $profileId,
'2013-03-01',
'2013-03-10',
$metrics,
$optParams);

結果を表示する場合:

 function getRows($results) {
      $table = '<h3>Rows Of Data</h3>';

      if (count($results->getRows()) > 0) {
      $table .= '<table>';

      // Print headers.
      $table .= '<tr>';

      foreach ($results->getColumnHeaders() as $header) {
          $table .= '<th>' . $header->name . '</th>';
      }
      $table .= '</tr>';

      // Print table rows.
      foreach ($results->getRows() as $row) {
        $table .= '<tr>';
        foreach ($row as $cell) {
           $table .= '<td>'
               . htmlspecialchars($cell, ENT_NOQUOTES)
               . '</td>';
        }
        $table .= '</tr>';
      }
      $table .= '</table>';

      } else {
      $table .= '<p>No results found.</p>';
      }

      return $table;
  }

このデモを動かしてみると、理解が深まります。このコード
も参照してください

于 2013-03-13T19:37:48.997 に答える
2

data_ga->getこれは、API ソースでの関数の定義です。

public function get($ids, $startDate, $endDate, $metrics, $optParams = array())
  {
    $params = array('ids' => $ids, 'start-date' => $startDate, 'end-date' => $endDate, 'metrics' => $metrics);
    $params = array_merge($params, $optParams);
    return $this->call('get', array($params), "Google_Service_Analytics_GaData");
  }

完全なパラメータリストはこちら

ids、startdate、enddate、および metrics を除くすべてのパラメーターはオプションであり、get 関数の 5 番目の引数として連想配列として送信する必要があります。

于 2015-07-10T08:46:57.070 に答える