2017-06-17 4 views
0

Ich möchte Keyword-Stats mit Facebook Marketing API abrufen, fand ich einige Dokumentation in Bezug auf die gleichen in der Facebook-Entwickler-Abschnitt & Hier ist der Link für die gleiche.Facebook Marketing-API - Anzeigen Keyword-Statistiken abrufen

https://developers.facebook.com/docs/marketing-api/reference/ad-keyword-stats

Um ad Keyword-Statistik für ein bestimmtes Konto bekommen kann ich eine Schleife durch alle Konten benötigen, Kampagnen & Anzeigen oder gibt es eine direkte Art und Weise, wo ich ad Konto & passieren kann erhalten alle Keyword-Statistik Anzeige ?

Bitte helfen Sie mir.

Vielen Dank!

Antwort

0

Hier ist der Code, mit dem ich gearbeitet habe und schließlich alles behoben habe, aber Erkenntnisse wie CPC, Impressionen usw. gewonnen hat und auf der Grundlage der von Ihnen verwendeten Parameter aus Konto-, Kampagnen-, Anzeigensatz- und sogar Anzeigenebenen erstellt werden kann . Lass es mich wissen, ob dir das weiterhelfen kann.

<?php 

     require_once __DIR__ . '/vendor/autoload.php'; 
     use FacebookAds\Api; 
     use FacebookAds\Object\AdUser; 
     use Facebook\Facebook; 
     use Facebook\Exceptions\FacebookResponseException; 
     use Facebook\Exceptions\FacebookSDKException; 
     use FacebookAds\Object\Campaign; 
     use FacebookAds\Object\Fields\AdsInsightsFields; 
     use FacebookAds\Object\Ad; 
     use FacebookAds\Object\Fields\AdSetFields; 
     use FacebookAds\Object\AdCampaign; 
     use FacebookAds\Object\Fields\AdFields; 
     use FacebookAds\Object\Fields; 
     use FacebookAds\Object\Fields\AdImageFields; 
     use FacebookAds\Object\AdAccount; 
     use FacebookAds\Object\AdSet; 
     use FacebookAds\Object\AdCreative; 
     use FacebookAds\Object\Fields\AdCreativeFields; 
     use FacebookAds\Object\Fields\AdCreativePhotoDataFields; 
     use FacebookAds\Object\AdCreativeLinkData; 
     use FacebookAds\Object\Fields\AdCreativeLinkDataFields; 
     use FacebookAds\Object\Fields\CampaignFields; 
     use FacebookAds\Object\Page; 
     use FacebookAds\Object\Fields\AdPreviewFields; 
     use FacebookAds\Object\Values\AdPreviewAdFormatValues; 
     use FacebookAds\Object\AdVideo; 
     ?> 

Here is the general code I am trying 

<?php 
     // Init PHP Sessions 
     session_start(); 

     $fb = new Facebook([ 
      'app_id' => 'xxxxxxxxx', 
      'app_secret' => 'xxxxxxxxxxx', 
     ]); 

     $helper = $fb->getRedirectLoginHelper(); 

     if (!isset($_SESSION['enter api key here'])) { 
      $_SESSION['enter api key here'] = null; 
     } 

     if (!$_SESSION['enter api key here']) { 
      $helper = $fb->getRedirectLoginHelper(); 
      try { 
      $_SESSION['enter api key here'] = (string) $helper->getAccessToken(); 
      } catch(FacebookResponseException $e) { 
      // When Graph returns an error 
      echo 'Graph returned an error: ' . $e->getMessage(); 
      exit; 
      } catch(FacebookSDKException $e) { 
      // When validation fails or other local issues 
      echo 'Facebook SDK returned an error: ' . $e->getMessage(); 
      exit; 
      } 
     } 

     if ($_SESSION['enter api key here']) { 
      //echo "You are logged in!"; 

     // Initialize a new Session and instantiate an API object 
     Api::init(
      'xxxxxxxxx', // App ID 
      'xxxxxxxxx', //app_secret 
      $_SESSION['enter api key here'] // Your user access token 
     ); 

    ?> 
<div id="fbdata"></div> <?php 

    $account = new AdAccount('act_xxxxxxxxxx'); 


     $params = array(

     'date_preset'=> 'last_28d', 


      'thumbnail_width' => 200, 
      'thumbnail_height' => 150, 
      'level' => 'campaign', 
      'limit' => '15' 

     ); 

$fields = array(
    AdsInsightsFields::CAMPAIGN_NAME, 
    AdsInsightsFields::CAMPAIGN_ID, 
    AdsInsightsFields::IMPRESSIONS, 
    AdsInsightsFields::CLICKS, 
    AdsInsightsFields::REACH, 
    AdsInsightsFields::SPEND, 
    AdsInsightsFields::CPM, 
    AdsInsightsFields::CPC, 
    AdsInsightsFields::ACTIONS, 
); 

$field = array(
    AdCreativeFields::TITLE, 
    AdCreativeFields::THUMBNAIL_URL, 
    AdCreativeFields::BODY, 
); 

      $params1 = array(
      'time_range' => array(
      'since' => (new \DateTime($beginDate))->format('Y-m-d'), 
      'until' => (new \DateTime($lastDate))->format('Y-m-d'), 
     ), 
      'thumbnail_width' => 200, 
      'thumbnail_height' => 150, 
      'level' => 'ad', 
      'limit' => '5' 
     );  

$adcreatives = $account->getAdCreatives($field, $params1); 
?>  
     <table class="fbtable"> 
      <tr> 
       <th>Title</th> 
       <th>Ad Image</th> 
       <th>Ad Body</th> 
      </tr> 
      <?php 
foreach($adcreatives as $t2){ 

     echo"<tr> 
     <td>$t2->title</td> 
     <td><img src='$t2->thumbnail_url'/></td> 
     <td>$t2->body</td> 
    </tr>"; 
} 

     $insights = $account->getInsights($fields, $params);?> 

     <table class="fbtable"> 
      <tr> 
       <th>Campaign ID</th> 
       <th>Campaign Name</th> 
       <th>Impressions</th> 
       <th>Clicks</th> 
       <th>Reach</th> 
       <th>Spend</th> 
       <th>Total Actions</th> 
       <th>CPM</th> 
       <th>CPC</th> 
      </tr> 

      <?php 

foreach($insights as $i) { 
    $impress = number_format((float)$i->impressions); 
    $reach = number_format((float)$i->reach); 
    $totalAction = number_format((float)$i->actions); 
    $cpc = number_format($i->cpc, 2, '.', ''); 
    $cpm = number_format($i->cpm, 2, '.', ''); 
    echo"<tr class='fbtable'> 
     <td>$i->campaign_id</td> 
     <td>$i->campaign_name</td> 
     <td>$impress</td> 
     <td>$i->clicks</td> 
     <td>$reach</td> 
     <td>$$i->spend</td> 
     <td>$totalAction</td> 
     <td>$$cpm</td> 
     <td>$$cpc</td> 
    </tr>"; 
} 
     }else { 
      $permissions = ['ads_management']; 
      $loginUrl = $helper->getLoginUrl('http://where you want login to be.com', $permissions); 
      echo '<a href="' . $loginUrl . '">Log in with Facebook</a>'; 
     } 


?> 
Verwandte Themen