توفّر مكتبة عميل 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
: الرمز المميز للمطوّر الذي يتيح لك الوصول إلى واجهة برمجة التطبيقات.[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
.