توفّر مكتبة عميل Google Ads API لبرنامج PHP عدّة إعدادات ضبط يمكنك استخدامها لتخصيص سلوك المكتبة.
ملف الإعداد
يمكنك تخزين معظم إعدادات الضبط هذه فيملفات
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
: الرمز المميز للمطوِّر للدخول إلى واجهة برمجة التطبيقات[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
: وحدات اعتراض 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 متوافقة مع نقل البيانات (راجِع دليل transport). - يجب ضبط قيمة
[CONNECTION] grpcChannelIsSecure
علىtrue
عند عدم ضبط[CONNECTION] transport
علىgrpc
. - لا يمكن ضبط
[CONNECTION] grpcChannelCredential
إلا عند ضبط[CONNECTION] transport
علىgrpc
. - لا يمكن ضبط
[CONNECTION] grpcChannelCredential
إلا عندما يكون[CONNECTION] grpcChannelIsSecure
هوtrue
.