You are here

function kwresearch_add_intel_gwt_query_settings in Keyword Research 7

2 calls to kwresearch_add_intel_gwt_query_settings()
kwresearch_load_filtered_keyword_result in ./kwresearch.module
Returns keywords based on custom queries.
kwresearch_page_keywords_page in includes/page_report.inc
Generates table of keywords associated with a pages

File

./kwresearch.module, line 457

Code

function kwresearch_add_intel_gwt_query_settings(&$query) {
  $g = $query
    ->leftJoin('intel_gwt_search', 'g', '%alias.keyword = k.keyword AND (%alias.timeframe = :timeframe1 OR %alias.keyword IS NULL)', array(
    ':timeframe1' => 'l28',
  ));
  $query
    ->addField($g, 'impressions', 'gwt_impressions');
  $query
    ->addField($g, 'clicks', 'gwt_clicks');
  $query
    ->addField($g, 'position', 'gwt_position');
  $h = $query
    ->leftJoin('intel_gwt_search', 'h', '%alias.keyword = k.keyword AND (%alias.timeframe = :timeframe0 OR %alias.keyword IS NULL)', array(
    ':timeframe0' => 'm28',
  ));
  $query
    ->addField($h, 'impressions', 'gwt_impressions0');
  $query
    ->addField($h, 'clicks', 'gwt_clicks0');
  $query
    ->addField($h, 'position', 'gwt_position0');
  $query
    ->addExpression('CAST(' . $g . '.impressions AS SIGNED) - CAST(' . $h . '.impressions AS SIGNED)', 'gwt_impressions_chg');
  $query
    ->addExpression('CAST(' . $g . '.clicks AS SIGNED) - CAST(' . $h . '.clicks AS SIGNED)', 'gwt_clicks_chg');
  $query
    ->addExpression($g . '.position - ' . $h . '.position', 'gwt_position_chg');
  $query
    ->groupBy('k.keyword');
  return $query;
}