توفّر مكتبة برامج 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_HERE')
->withClientSecret('INSERT_CLIENT_SECRET_HERE')
->withRefreshToken('INSERT_REFRESH_TOKEN_HERE')
->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
->withOAuth2Credential($oAuth2Credential)
->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 (تكون تلقائيًاhttps://www.googleapis.com/auth/adwordsفي الإصدارv32.1.0والإصدارات الأحدث، وهي مطلوبة في الإصدارات الأقدم منv32.1.0أو عند استخدام نطاقات مخصّصة، ولا تتم قراءتها من متغيّر بيئة بواسطةfromEnvironmentVariables()). [OAUTH2] impersonatedEmail: عنوان بريد إلكتروني اختياري لانتحال الهوية عند استخدام التفويض على مستوى نطاق Google Workspace
-
- وضع "بيانات الاعتماد التلقائية للتطبيق":
- في حال عدم ضبط حقول "وضع التطبيق" أو "وضع حساب الخدمة"،
يعود
OAuth2TokenBuilderتلقائيًا إلى "بيانات الاعتماد التلقائية للتطبيق" (ADC).
- في حال عدم ضبط حقول "وضع التطبيق" أو "وضع حساب الخدمة"،
يعود
- وضع التطبيق:
- الحقول التي يستخدمها "
GoogleAdsClientBuilder":-
[GOOGLE_ADS] loginCustomerId: رقم تعريف العميل المفوَّض لاستخدامه في الطلب -
[GOOGLE_ADS] linkedCustomerId: الرقم التعريفي للعميل المرتبط -
[GOOGLE_ADS] endpoint: نقطة نهاية اختيارية بديلة لخادم Google Ads API -
[LOGGING] logFilePath: مسار مخرجات التسجيل -
[LOGGING] logLevel: مستوى التسجيل -
[CONNECTION] proxy: عنوان URL للخادم الوكيل المستخدَم للاتصال بالإنترنت -
[CONNECTION] transport: بروتوكول نقل البيانات في الشبكة (grpcأوrest). -
[CONNECTION] grpcChannelIsSecure: تشير إلى ما إذا كانت قناة gRPC آمنة. -
[CONNECTION] grpcChannelCredential: بيانات اعتماد قناة gRPC -
[CONNECTION] unaryMiddlewares: البرامج الوسيطة الأحادية -
[CONNECTION] streamingMiddlewares: البرامج الوسيطة للبث -
[CONNECTION] grpcInterceptors: تمثّل هذه السمة معترضات 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.