ไลบรารีของไคลเอ็นต์ PHP ของ Google Ads API มีการตั้งค่าการกําหนดค่าหลายรายการที่คุณใช้ปรับแต่งลักษณะการทํางานของไลบรารีได้
ไฟล์การกําหนดค่า
คุณสามารถจัดเก็บการตั้งค่าการกำหนดค่าเหล่านี้ส่วนใหญ่ไว้ในไฟล์ ini
และนำไปใช้เมื่อเริ่มต้นไคลเอ็นต์ได้ เช่น google_ads_php.ini
ทั้งเครื่องมือสร้างข้อมูลเข้าสู่ระบบและเครื่องมือสร้างไคลเอ็นต์มีfromFile
วิธีการโหลดการตั้งค่าจากไฟล์ดังกล่าว ดังนี้
$oAuth2Credential = (new OAuth2TokenBuilder())
->fromFile('/path/to/google_ads_php.ini')
->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
->fromFile('/path/to/google_ads_php.ini')
->withOAuth2Credential($oAuth2Credential)
->build();
หากไม่มีการระบุเส้นทางการกำหนดค่าเป็นอาร์กิวเมนต์ เมธอด fromFile
จะโหลดจากเส้นทางการกําหนดค่าเริ่มต้นซึ่งก็คือ
- ค่าของตัวแปรสภาพแวดล้อมที่มีชื่อว่า
GOOGLE_ADS_CONFIGURATION_FILE_PATH
หากมีการตั้งค่า - หรือไฟล์
google_ads_php.ini
ในไดเรกทอรีHOME
$oAuth2Credential = (new OAuth2TokenBuilder())
->fromFile()
->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
->fromFile()
->withOAuth2Credential($oAuth2Credential)
->build();
การกําหนดค่าแบบไดนามิก
คุณสามารถตั้งค่าการกําหนดค่าเหล่านี้แบบไดนามิกเมื่อสร้างอินสแตนซ์ไคลเอ็นต์
$oAuth2Credential = (new OAuth2TokenBuilder())
->withClientId('INSERT_CLIENT_ID')
// ...
->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
->withOAuth2Credential($oAuth2Credential)
->withDeveloperToken('INSERT_DEVELOPER_TOKEN_HERE')
// ...
->build();
ตัวแปรสภาพแวดล้อมการกําหนดค่า
คุณสามารถตั้งค่าการกําหนดค่าบางอย่างจากตัวแปรสภาพแวดล้อมเมื่อสร้างอินสแตนซ์ไคลเอ็นต์ (ดูรายการที่ครอบคลุม)
ทั้งเครื่องมือสร้างข้อมูลเข้าสู่ระบบและเครื่องมือสร้างไคลเอ็นต์มีfromEnvironmentVariables
วิธีโหลดการตั้งค่าจากตัวแปรสภาพแวดล้อม ดังนี้
$oAuth2Credential = (new OAuth2TokenBuilder())
// ...
->fromEnvironmentVariables()
->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
->withOAuth2Credential($oAuth2Credential)
// ...
->fromEnvironmentVariables()
->build();
ฟิลด์การกําหนดค่า
การตั้งค่าการกําหนดค่ารองรับช่องหลายช่องที่จัดระเบียบเป็นหมวดหมู่
- ช่องที่ใช้โดย
OAuth2TokenBuilder
- โหมดแอปพลิเคชัน
[OAUTH2] clientId
: รหัสไคลเอ็นต์ OAuth2[OAUTH2] clientSecret
: รหัสลับไคลเอ็นต์ OAuth2[OAUTH2] refreshToken
: โทเค็นการรีเฟรช OAuth2
- โหมดบัญชีบริการ
[OAUTH2] jsonKeyFilePath
: เส้นทางไฟล์คีย์ JSON[OAUTH2] scopes
: ขอบเขต[OAUTH2] impersonatedEmail
: อีเมลที่จะแอบอ้างเป็นบุคคลอื่น
- โหมดแอปพลิเคชัน
- ช่องที่ใช้โดย
GoogleAdsClientBuilder
[GOOGLE_ADS] developerToken
: โทเค็นนักพัฒนาแอปของคุณสําหรับการเข้าถึง API[GOOGLE_ADS] loginCustomerId
: รหัสของลูกค้าที่ได้รับอนุญาตที่จะใช้ในคำขอ[GOOGLE_ADS] linkedCustomerId
: รหัสลูกค้าที่ลิงก์[LOGGING] logFilePath
: เส้นทางไฟล์สำหรับการบันทึก[LOGGING] logLevel
: ระดับการบันทึก[CONNECTION] proxy
: URL ของพร็อกซีเซิร์ฟเวอร์ที่ใช้เชื่อมต่ออินเทอร์เน็ต[CONNECTION] transport
: ยานพาหนะ[CONNECTION] grpcChannelIsSecure
: ช่องทาง gRPC มีความปลอดภัยหรือไม่[CONNECTION] grpcChannelCredential
: ข้อมูลเข้าสู่ระบบของช่อง gRPC[CONNECTION] unaryMiddlewares
: มิดเดิลแวร์แบบยูนาร์ดี[CONNECTION] streamingMiddlewares
: มิดเดิลแวร์สตรีมมิง[CONNECTION] grpcInterceptors
: Interceptor ของ gRPC
การตรวจสอบการกำหนดค่า
ระบบจะตรวจสอบการตั้งค่าการกําหนดค่าเมื่อสร้างอินสแตนซ์ไคลเอ็นต์และจะแสดงข้อยกเว้นเมื่อไม่ถูกต้อง กฎมีดังนี้
- คุณต้องไม่ตั้งค่าช่อง
[OAUTH2]
สำหรับทั้งโหมดแอปพลิเคชันและโหมดบัญชีบริการพร้อมกัน - คุณต้องตั้งค่า
[OAUTH2] jsonKeyFilePath
และ[OAUTH2] scopes
เมื่อใช้โหมดบัญชีบริการ - คุณต้องตั้งค่า
[OAUTH2] clientId
,[OAUTH2] clientSecret
และ[OAUTH2] refreshToken
เมื่อใช้โหมดแอปพลิเคชัน - ต้องตั้งค่า
[GOOGLE_ADS] developerToken
เสมอ - หากตั้งค่า
[GOOGLE_ADS] loginCustomerId
และ[GOOGLE_ADS] linkedCustomerId
ต้องต้องเป็นจํานวนบวก - หากมีการตั้งค่า
[CONNECTION] proxy
ต้องเป็น URL ที่ถูกต้อง (ดูตัวกรอง FILTER_VALIDATE_URL) - หากตั้งค่า
[LOGGING] logLevel
ต้องเป็นระดับบันทึก PSR ที่ถูกต้องในรูปแบบตัวพิมพ์ใหญ่ เช่นINFO
- หากมีการตั้งค่า
[CONNECTION] transport
จะต้องเป็นgrpc
หรือrest
- หากตั้งค่า
[CONNECTION] transport
เป็นgrpc
สภาพแวดล้อมต้องรองรับการส่ง gRPC (ดูการขนส่งคู่มือ) [CONNECTION] grpcChannelIsSecure
ต้องเท่ากับtrue
เมื่อไม่ได้ตั้งค่า[CONNECTION] transport
เป็นgrpc
- คุณจะตั้งค่า
[CONNECTION] grpcChannelCredential
ได้ก็ต่อเมื่อตั้งค่า[CONNECTION] transport
เป็นgrpc
เท่านั้น [CONNECTION] grpcChannelCredential
จะตั้งค่าได้ก็ต่อเมื่อ[CONNECTION] grpcChannelIsSecure
เป็นtrue
เท่านั้น