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 saklayabilir ve istemcileri örneklendirirken (ör. google_ads_php.ini) kullanabilirsiniz.
Hem kimlik bilgisi hem de istemci oluşturucular, bu tür dosyalardan ayarları yüklemek için fromFile yöntemleri sağlar:
$oAuth2Credential = (new OAuth2TokenBuilder())
->fromFile('/path/to/google_ads_php.ini')
->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
->fromFile('/path/to/google_ads_php.ini')
->withOAuth2Credential($oAuth2Credential)
->build();
Parametre olarak yapılandırma yolu sağlanmazsa fromFileyöntemleri varsayılan yapılandırma yolundan yüklenir. Bu yol:
- Ayarlanmışsa
GOOGLE_ADS_CONFIGURATION_FILE_PATHadlı ortam değişkeninin değeri. - Aksi takdirde,
HOMEdizininizdekigoogle_ads_php.inidosyası.
$oAuth2Credential = (new OAuth2TokenBuilder())
->fromFile()
->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
->fromFile()
->withOAuth2Credential($oAuth2Credential)
->build();
Dinamik yapılandırma
İstemcileri örneklendirirken 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 örneklendirirken yapılandırma ayarlarından bazılarını ortam değişkenlerinden ayarlayabilirsiniz (tam listeye bakın).
Hem kimlik bilgisi hem de istemci oluşturucular, ayarları ortam değişkenlerinden yüklemek için fromEnvironmentVariablesyöntemleri sağlar:
$oAuth2Credential = (new OAuth2TokenBuilder())
// ...
->fromEnvironmentVariables()
->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
->withOAuth2Credential($oAuth2Credential)
// ...
->fromEnvironmentVariables()
->build();
Yapılandırma alanları
Yapılandırma ayarları, kategorilere ayrılmış çeşitli alanları destekler.
OAuth2TokenBuildertarafından kullanılan alanlar:- Uygulama Modu
[OAUTH2] clientId: OAuth2 istemci kimliğiniz.[OAUTH2] clientSecret: OAuth2 istemci sırrınız.[OAUTH2] refreshToken: OAuth2 yenileme jetonunuz.
- Hizmet Hesabı Modu
[OAUTH2] jsonKeyFilePath: Json anahtarı dosya yolu.[OAUTH2] scopes: Kapsamlar.[OAUTH2] impersonatedEmail: Kimliğine bürünmek için kullanılacak e-posta adresi.
- Uygulama Modu
GoogleAdsClientBuildertarafından kullanılan alanlar:[GOOGLE_ADS] developerToken: API'ye erişmek için kullandığınız 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üğe kaydetme dosyası yolu.[LOGGING] logLevel: Günlük kaydı düzeyi.[CONNECTION] proxy: İnternet bağlantısı için kullanılan proxy sunucusu URL'si.[CONNECTION] transport: Taşıma.[CONNECTION] grpcChannelIsSecure: gRPC kanalının güvenli olup olmadığı.[CONNECTION] grpcChannelCredential: gRPC kanal kimlik bilgileri.[CONNECTION] unaryMiddlewares: Birli orta katmanlar.[CONNECTION] streamingMiddlewares: Akış orta katmanları.[CONNECTION] grpcInterceptors: gRPC müdahalecileri.
Yapılandırma doğrulaması
İstemciler oluşturulurken yapılandırma ayarları kontrol edilir ve geçersiz olduğunda istisnalar atılır. Kurallar şunlardır:
[OAUTH2]alanları hem Uygulama Modu hem de Hizmet Hesabı Modu için aynı anda ayarlanmamalıdır.- Hizmet Hesabı Modu kullanılırken
[OAUTH2] jsonKeyFilePathve[OAUTH2] scopesayarlanmalıdır. [OAUTH2] clientId,[OAUTH2] clientSecretve[OAUTH2] refreshToken, Uygulama Modu kullanılırken ayarlanmalıdır.[GOOGLE_ADS] developerTokenher zaman ayarlanmalıdır.- Ayarlandıysa
[GOOGLE_ADS] loginCustomerIdve[GOOGLE_ADS] linkedCustomerIdpozitif sayı olmalıdır. - Ayarlanmışsa
[CONNECTION] proxygeçerli bir URL olmalıdır (FILTER_VALIDATE_URL filtresine bakın). - Ayarlanırsa
[LOGGING] logLevel,INFOgibi büyük harflerle yazılmış geçerli bir PSR günlük düzeyi olmalıdır. - Ayarlanmışsa
[CONNECTION] transport,grpcveyarestolmalıdır. [CONNECTION] transportgrpcolarak ayarlanmışsa gRPC aktarımı ortam tarafından desteklenmelidir (aktarıcı kılavuzuna bakın).[CONNECTION] transportgrpcolarak ayarlanmadığında[CONNECTION] grpcChannelIsSecuretrueolmalıdır.[CONNECTION] grpcChannelCredentialyalnızca[CONNECTION] transport,grpcolarak ayarlandığında ayarlanabilir.[CONNECTION] grpcChannelCredentialyalnızca[CONNECTION] grpcChannelIsSecuretrueolduğunda ayarlanabilir.