1. Advertising
    y u no do it?

    Advertising (learn more)

    Advertise virtually anything here, with CPM banner ads, CPM email ads and CPC contextual links. You can target relevant areas of the site and show ads based on geographical location of the user if you wish.

    Starts at just $1 per CPM or $0.10 per CPC.

MapUtils.php - GetMapEntries

Discussion in 'Google API' started by ggalan, Jun 13, 2011.

  1. #1
    i have used GetMap like this
    $user = new AdWordsUser();
    
    $user->LogDefaults();
    
    $targetingIdeaService = $user->GetTargetingIdeaService('v201008');
    
    $keyword = new Keyword();
    $keyword->text = $kWord;
    $keyword->matchType = 'EXACT';//BROAD , "Phrase"
    [COLOR="red"]
    $selector = new TargetingIdeaSelector();
    $selector->requestType = 'IDEAS';
    $selector->ideaType = 'KEYWORD';
    $selector->requestedAttributeTypes =  array('KEYWORD', 'AVERAGE_TARGETED_MONTHLY_SEARCHES');[/COLOR]
      
    $paging = new Paging();
    $paging->startIndex = 0;
    $paging->numberResults = 10;
    $selector->paging = $paging;
    
    $relatedToKeywordSearchParameter = new RelatedToKeywordSearchParameter();
    $relatedToKeywordSearchParameter->keywords = array($keyword);
    
    $keywordMatchTypeSearchParameter = new KeywordMatchTypeSearchParameter();
    $keywordMatchTypeSearchParameter->keywordMatchTypes = array('EXACT');//BROAD
    
    $selector->searchParameters =
      array($relatedToKeywordSearchParameter, $keywordMatchTypeSearchParameter);
    
    $page = $targetingIdeaService->get($selector);
    
    if (isset($page->entries)) {  
    
    echo '<div id="output"><ul>';
    	foreach ($page-> entries as $targetingIdea) {
    	  echo '<li><a href="#">';
    	  $data = MapUtils::[COLOR="red"]GetMap[/COLOR]($targetingIdea->data);
    	  
    	  $keyword = $data['KEYWORD']->value;
    	  
    	  $averageMonthlySearches =  isset($data['AVERAGE_TARGETED_MONTHLY_SEARCHES']->value)
    		  ? $data['AVERAGE_TARGETED_MONTHLY_SEARCHES']->value : 0;
    	  
    	  echo  $keyword->text . '</a>';
    	  echo  ' match types:' . $keyword->matchType;
    	  echo  ' / ' . $averageMonthlySearches . ' monthly searches';
    	  echo '</li>';
    	}
    echo '</ul></div>';
    Code (markup):
    how ever i would like to add more entries and take advantage of GetMapEntries
    like adding
    
    $selector->requestedAttributeTypes =  array('KEYWORD', 'COMPETITION');
    $selector->requestedAttributeTypes =  array('KEYWORD', 'SEARCH_SHARE');
    
    Code (markup):
    can anyone lend a hand how i can make this happen? my code below does not work
    
    <?php
    error_reporting(E_STRICT | E_ALL);
    
    $path = dirname(__FILE__) . '/../../src';
    set_include_path(get_include_path() . PATH_SEPARATOR . $path);
    
    require_once 'Google/Api/Ads/AdWords/Lib/AdWordsUser.php';
    require_once 'Google/Api/Ads/Common/Util/MapUtils.php';
    
    
    
    try {
      $user = new AdWordsUser();
    
      $user->LogDefaults();
    
      $targetingIdeaService = $user->GetTargetingIdeaService('v201008');
    
      $keyword = new Keyword();
      $keyword->text = $kWord;
      $keyword->matchType = 'EXACT';//BROAD , "Phrase"
    
    [COLOR="red"]  $selector = new TargetingIdeaSelector();
      $selector->requestType = 'IDEAS';
      $selector->ideaType = 'KEYWORD';
      $selector->requestedAttributeTypes =  array('KEYWORD', 'AVERAGE_TARGETED_MONTHLY_SEARCHES');
     
      $selector->requestedAttributeTypes =  array('KEYWORD', 'COMPETITION');
      $selector->requestedAttributeTypes =  array('KEYWORD', 'SEARCH_SHARE');[/COLOR]
    	  
      $paging = new Paging();
      $paging->startIndex = 0;
      $paging->numberResults = 10;
      $selector->paging = $paging;
    
      $relatedToKeywordSearchParameter = new RelatedToKeywordSearchParameter();
      $relatedToKeywordSearchParameter->keywords = array($keyword);
    
      $keywordMatchTypeSearchParameter = new KeywordMatchTypeSearchParameter();
      $keywordMatchTypeSearchParameter->keywordMatchTypes = array('EXACT');//BROAD
    
      $selector->searchParameters =
    	  array($relatedToKeywordSearchParameter, $keywordMatchTypeSearchParameter);
    
      $page = $targetingIdeaService->get($selector);
    
    
      if (isset($page->entries)) {  
    	
    	echo '<div id="output"><ul>';
    		foreach ($page-> entries as $targetingIdea) {
    		  echo '<li><a href="#">';
    		  $data = MapUtils::[COLOR="red"]GetMapEntries[/COLOR]($targetingIdea->data);
    		  
    		  $keyword = $data['KEYWORD']->value;
    		  
    		  
    		  $averageMonthlySearches =  isset($data['AVERAGE_TARGETED_MONTHLY_SEARCHES']->value)
    			  ? $data['AVERAGE_TARGETED_MONTHLY_SEARCHES']->value : 0;
    		  
    		  $competition = isset($data2['COMPETITION']->value)
    			  ? $data2['COMPETITION']->value : 0;
    			  
    		  $searchShare = isset($data3['SEARCH_SHARE']->value)
    			  ? $data3['SEARCH_SHARE']->value : 0;
    		  echo  $keyword->text . '</a>';
    		  echo  ' match types:' . $keyword->matchType;
    		  echo  ' / ' . $averageMonthlySearches . ' monthly searches';
    		  echo  ' / ' . $competition . ' competition';
    		  echo  ' / ' . $searchShare . ' search share';
    		  echo '</li>';
    		}
    	echo '</ul></div>';
    		
      } else {
    	print "No related keywords were found.\n";
      }
    } catch (Exception $e) {
      print $e->getMessage();
    }
    
    
    ?>
    
    Code (markup):

     
    ggalan, Jun 13, 2011 IP