توفّر مكتبة عميل 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.