ספריית הלקוח של Google Ads API ל-PHP כוללת כמה הגדרות אישיות שאפשר להשתמש בהן כדי להתאים אישית את התנהגות הספרייה.
קובץ תצורה
אפשר לשמור את רוב הגדרות התצורה האלה בקובצי ini
ולהשתמש בהן כשיוצרים את הלקוחות, לדוגמה google_ads_php.ini
.
ה-builders של פרטי הכניסה והלקוח מספקים שיטות 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();
אם לא צוין נתיב תצורה כארגומנט, ה-methods 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();
משתני סביבה של תצורה
אפשר להגדיר חלק מההגדרות באמצעות משתני סביבה בזמן יצירת הלקוחות (רשימת ההגדרות המלאה).
ה-builders של פרטי הכניסה ושל הלקוח מספקים שיטות 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 של שרת ה-proxy שמשמש לחיבור לאינטרנט.[CONNECTION] transport
: התחבורה.[CONNECTION] grpcChannelIsSecure
: האם ערוץ ה-gRPC מאובטח או לא.[CONNECTION] grpcChannelCredential
: פרטי הכניסה של ערוץ ה-gRPC.[CONNECTION] unaryMiddlewares
: שכבות הביניים החד-ערוציות.[CONNECTION] streamingMiddlewares
: שכבות הביניים לסטרימינג.[CONNECTION] grpcInterceptors
: מנטעים של gRPC.
אימות ההגדרות האישיות
הגדרות התצורה נבדקות בזמן יצירת הלקוחות, והמערכת תיצור חריגות אם הן לא תקינות. אלה הכללים:
- אסור להגדיר את השדות
[OAUTH2]
גם למצב Application Mode וגם למצב Service Account Mode בו-זמנית. - צריך להגדיר את
[OAUTH2] jsonKeyFilePath
ו-[OAUTH2] scopes
כשמשתמשים במצב חשבון השירות. - צריך להגדיר את הערכים
[OAUTH2] clientId
,[OAUTH2] clientSecret
ו-[OAUTH2] refreshToken
כשמשתמשים במצב Application. - תמיד צריך להגדיר את
[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 (ראו המדריך transport). [CONNECTION] grpcChannelIsSecure
חייב להיותtrue
אם[CONNECTION] transport
לא מוגדר ל-grpc
.- אפשר להגדיר את
[CONNECTION] grpcChannelCredential
רק כשהערך של[CONNECTION] transport
הואgrpc
. - אפשר להגדיר את
[CONNECTION] grpcChannelCredential
רק כשהערך של[CONNECTION] grpcChannelIsSecure
הואtrue
.