Yapılandırma

Google Ads API PHP istemci kitaplığı, kitaplık davranışını özelleştirmek için kullanabileceğiniz çeşitli yapılandırma ayarları sağlar.

Yapılandırma dosyası

Bu yapılandırma ayarlarının çoğunu ini dosyalarında depolayabilir ve istemciler için örnek oluştururken bunları kullanabilirsiniz (örneğin, google_ads_php.ini).

Hem kimlik bilgisi hem de istemci oluşturucular, bu tür dosyalardan ayarları yüklemek için fromFile yöntemleri sunar:

$oAuth2Credential = (new OAuth2TokenBuilder())
    ->fromFile('/path/to/google_ads_php.ini')
    ->build();

$googleAdsClient = (new GoogleAdsClientBuilder())
    ->fromFile('/path/to/google_ads_php.ini')
    ->withOAuth2Credential($oAuth2Credential)
    ->build();

Bağımsız değişken olarak sağlanan bir yapılandırma dosyası yolu yoksa fromFile yöntemleri, şu varsayılan yapılandırma dosyası yolundan yüklenir:

  1. Ayarlanırsa GOOGLE_ADS_CONFIGURATION_FILE_PATH adlı ortam değişkeninin değeri.
  2. Aksi halde HOME dizininizdeki google_ads_php.ini dosyası.
$oAuth2Credential = (new OAuth2TokenBuilder())
    ->fromFile()
    ->build();

$googleAdsClient = (new GoogleAdsClientBuilder())
    ->fromFile()
    ->withOAuth2Credential($oAuth2Credential)
    ->build();

Dinamik yapılandırma

İstemci örnekleri oluştururken bu yapılandırma ayarlarını dinamik olarak ayarlayabilirsiniz.

$oAuth2Credential = (new OAuth2TokenBuilder())
    ->withClientId('INSERT_CLIENT_ID')
    // ...
    ->build();

$googleAdsClient = (new GoogleAdsClientBuilder())
    ->withOAuth2Credential($oAuth2Credential)
    ->withDeveloperToken('INSERT_DEVELOPER_TOKEN_HERE')
    // ...
    ->build();

Yapılandırma ortamı değişkenleri

İstemcileri başlatırken ortam değişkenlerinden bazı yapılandırma ayarlarını belirleyebilirsiniz (kapsamlı listeyi inceleyin).

Hem kimlik bilgisi hem de istemci oluşturucular, ortam değişkenlerinden ayarları yüklemek için fromEnvironmentVariables yöntemleri sağlar:

$oAuth2Credential = (new OAuth2TokenBuilder())
    // ...
    ->fromEnvironmentVariables()
    ->build();

$googleAdsClient = (new GoogleAdsClientBuilder())
    ->withOAuth2Credential($oAuth2Credential)
    // ...
    ->fromEnvironmentVariables()
    ->build();

Yapılandırma alanları

Yapılandırma ayarları, kategoriler halinde düzenlenmiş çeşitli alanları destekler.

  1. OAuth2TokenBuilder tarafından kullanılan alanlar:
    • Uygulama Modu
      • [OAUTH2] clientId: OAuth2 istemci kimliğiniz.
      • [OAUTH2] clientSecret: OAuth2 istemci gizli anahtarınız.
      • [OAUTH2] refreshToken: OAuth2 yenileme jetonunuz.
    • Hizmet Hesabı Modu
      • [OAUTH2] jsonKeyFilePath: Json anahtar dosyası yolu.
      • [OAUTH2] scopes: Kapsamlar.
      • [OAUTH2] impersonatedEmail: Kimliğine bürünülecek e-posta adresi.
  2. GoogleAdsClientBuilder tarafından kullanılan alanlar:
    • [GOOGLE_ADS] developerToken: API'ye erişmek için geliştirici jetonunuz.
    • [GOOGLE_ADS] loginCustomerId: İstekte kullanılacak yetkili müşterinin kimliği.
    • [GOOGLE_ADS] linkedCustomerId: Bağlı müşteri kimliği.
    • [LOGGING] logFilePath: Günlük kaydı dosya yolu.
    • [LOGGING] logLevel: Günlük kaydı düzeyi.
    • [CONNECTION] proxy: İnternet bağlantısı için kullanılan proxy sunucu URL'si.
    • [CONNECTION] transport: Ulaşım.
    • [CONNECTION] grpcChannelIsSecure: gRPC kanalının güvenli olup olmadığı.
    • [CONNECTION] grpcChannelCredential: gRPC kanalı kimlik bilgileri.
    • [CONNECTION] unaryMiddlewares: Tekli ara yazılımlar.
    • [CONNECTION] streamingMiddlewares: Akış ara yazılımları.
    • [CONNECTION] grpcInterceptors: gRPC önleyicileri.
  3. [GAPIC] useGapicV2Source: Hizmet istemcileri oluştururken GAPIC v2 kaynak kodunun kullanılıp kullanılmayacağını belirtir.

Yapılandırma doğrulaması

Örnek oluşturma istemci ve istisnalar geçersiz olduğunda, yapılandırma ayarları kontrol edilir. Kurallar şunlardır:

  1. [OAUTH2] alanları aynı anda hem Uygulama Modu hem de Hizmet Hesabı Modu için ayarlanmamalıdır.
  2. Hizmet Hesabı Modu kullanılırken [OAUTH2] jsonKeyFilePath ve [OAUTH2] scopes ayarlanmalıdır.
  3. Uygulama Modu kullanılırken [OAUTH2] clientId, [OAUTH2] clientSecret ve [OAUTH2] refreshToken ayarlanmalıdır.
  4. [GOOGLE_ADS] developerToken her zaman ayarlanmalıdır.
  5. Ayarlanırsa [GOOGLE_ADS] loginCustomerId ve [GOOGLE_ADS] linkedCustomerId pozitif sayı olmalıdır.
  6. Ayarlanırsa [CONNECTION] proxy geçerli bir URL olmalıdır (FILTER_VALIDATE_URL filtresine bakın).
  7. Ayarlanırsa [LOGGING] logLevel, büyük harfle yazılmış geçerli bir PSR günlük düzeyi (ör. INFO) olmalıdır.
  8. Ayarlanırsa [CONNECTION] transport, grpc veya rest olmalıdır.
  9. [CONNECTION] transport, grpc olarak ayarlanırsa gRPC aktarımı ortam tarafından desteklenmelidir (bkz. aktarım kılavuzu).
  10. [CONNECTION] transport, grpc olarak ayarlanmadığında [CONNECTION] grpcChannelIsSecure, true olmalıdır.
  11. [CONNECTION] grpcChannelCredential yalnızca [CONNECTION] transport, grpc olarak ayarlandığında ayarlanabilir.
  12. [CONNECTION] grpcChannelCredential yalnızca [CONNECTION] grpcChannelIsSecure, true olduğunda ayarlanabilir.