ספריית הלקוח של Google Ads API ל-PHP כוללת כמה הגדרות אישיות שמאפשרות להתאים אישית את אופן הפעולה של הספרייה.
קובץ תצורה
אתם יכולים לאחסן את רוב הגדרות התצורה האלה בקובצי תצורה מסוג INI ולהשתמש בהן כשאתם יוצרים לקוחות, לדוגמה, google_ads_php.ini.
גם ב-credential builder וגם ב-client builder יש שיטות 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_HERE')
->withClientSecret('INSERT_CLIENT_SECRET_HERE')
->withRefreshToken('INSERT_REFRESH_TOKEN_HERE')
->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
->withOAuth2Credential($oAuth2Credential)
->build();
משתני סביבה של הגדרות אישיות
אתם יכולים להגדיר חלק מההגדרות האישיות ממשתני סביבה כשאתם יוצרים מופעים של לקוחות (ראו משתני סביבה סטנדרטיים).
גם ב-credential builder וגם ב-client builder יש שיטות 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 (ברירת המחדל היאhttps://www.googleapis.com/auth/adwordsבגרסהv32.1.0ואילך; נדרש בגרסאות שקדמו ל-v32.1.0או כשמשתמשים בהיקפי הרשאות בהתאמה אישית; לא נקרא ממשתנה סביבה על ידיfromEnvironmentVariables()). -
[OAUTH2] impersonatedEmail: כתובת אימייל אופציונלית להתחזות כשמשתמשים בהקצאת הרשאות ברמת הדומיין ב-Google Workspace.
-
- מצב Application Default Credentials:
- אם לא מגדירים את השדות של מצב האפליקציה או של מצב חשבון השירות,
OAuth2TokenBuilderחוזר באופן אוטומטי ל-Application Default Credentials (ADC).
- אם לא מגדירים את השדות של מצב האפליקציה או של מצב חשבון השירות,
- מצב אפליקציה:
- שדות שמשמשים את
GoogleAdsClientBuilder:-
[GOOGLE_ADS] loginCustomerId: המזהה של הלקוח המורשה שבו צריך להשתמש בבקשה. -
[GOOGLE_ADS] linkedCustomerId: מספר הלקוח המקושר. -
[GOOGLE_ADS] endpoint: נקודת קצה חלופית אופציונלית של שרת Google Ads API. -
[LOGGING] logFilePath: הנתיב לפלט של רישום ביומן. -
[LOGGING] logLevel: רמת הרישום ביומן. -
[CONNECTION] proxy: כתובת ה-URL של שרת ה-proxy שמשמש לחיבור לאינטרנט. -
[CONNECTION] transport: פרוטוקול התעבורה ברשת (grpcאוrest). -
[CONNECTION] grpcChannelIsSecure: אם ערוץ ה-gRPC מאובטח. -
[CONNECTION] grpcChannelCredential: פרטי הכניסה לערוץ gRPC. -
[CONNECTION] unaryMiddlewares: תוכנות הביניים החד-ערכיות. -
[CONNECTION] streamingMiddlewares: תוכנות הביניים של הסטרימינג. -
[CONNECTION] grpcInterceptors: רכיבי ה-interceptor של gRPC.
-
אימות ההגדרות האישיות
הגדרות התצורה נבדקות כשיוצרים מופעים של לקוחות, ואם הן לא תקינות, נזרקות חריגות. אלה כללי האימות:
- אסור להגדיר את השדות של
[OAUTH2]גם למצב אפליקציה וגם למצב חשבון שירות בו-זמנית. - צריך להגדיר את
[OAUTH2] jsonKeyFilePathכשמשתמשים במצב חשבון שירות (בגרסאות שקודמות ל-v32.1.0, צריך להגדיר גם את[OAUTH2] scopes. בגרסהv32.1.0ואילך, ברירת המחדל שלscopesהיאhttps://www.googleapis.com/auth/adwords). - כשמשתמשים במצב אפליקציה, צריך להגדיר את
[OAUTH2] clientId,[OAUTH2] clientSecretו-[OAUTH2] refreshToken. - אם מגדירים את
[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(חיבורי REST תמיד דורשים HTTPS). - אפשר להגדיר את
[CONNECTION] grpcChannelCredentialרק כש-[CONNECTION] transportמוגדר כ-grpc. - אפשר להגדיר את
[CONNECTION] grpcChannelCredentialרק אם[CONNECTION] grpcChannelIsSecureהואtrue.