WordPress SDK 2.5.0-RC.1 جاهز للاختبار: دقة الاستنساخ وتعليقات إلغاء التنشيط وتحسينات UX ومزج الأصول والمزيد

نشرت: 2022-01-18

إنه رسمي! WordPress SDK 2.5.0 RC1 متاح الآن مع تحسينات رائعة (وذات صلة) تعالج ما حددناه على أنه أكثر المشكلات شيوعًا والتي تستغرق وقتًا طويلاً حتى الآن.

هدفنا من هذا الإصدار هو مساعدتك على تقليل حمل الدعم بحيث يمكنك تخصيص المزيد من وقتك نحو التسليمات والأنشطة الأخرى الأكثر إنتاجية.

قبل أن نتعمق في الميزات ، نحتاج إلى مساعدتك 🙌

دعوة للمختبرين

على الرغم من أننا أجرينا اختبارات شاملة لجميع الأنواع (الآلية واليدوية واختبارات الانحدار) ، وبينما نشعر بثقة كبيرة في استقرار 2.5.0 ، نظرًا لتعقيد ومقدار تغييرات الكود وحالات الاستخدام المتضمنة في هذا الإصدار ، قررنا دفعه كمرشح للإصدار أولاً.

"أريد أن أشارك في الاختبار - كيف يمكنني المساعدة؟"

هل تريد مساعدتنا في الاختبار؟ هذا رائع ومقدر!

  • إذا كنت تقوم بتشغيل برنامج تجريبي ، فما عليك سوى تحديث SDK إلى RC هذا ودفع إصدار جديد كإصدار تجريبي .
  • إذا كنت لا تقوم بتشغيل برنامج تجريبي وتعلم أن بعض عملائك يقومون بتشغيل بيئات مستنسخة مثل التدريج إلى الإنتاج ، أو استخدام المكون الإضافي / السمة الخاصة بك مع مكونات WaaS الإضافية مثل WP Ultimo ، عندما يتصلون بالدعم بسبب مشكلات SDK ، يمكنك إرسال رسالة إليهم إصدار خاص من منتجك مع SDK هذا لأنه يجب أن يحل مشاكلهم.

بغض النظر ، إذا جربت RC ، سواء واجهت مشكلات أو ، على العكس من ذلك ، إذا تمكنت من حل مشكلات SDK التي واجهها المستخدمون من قبل ، فيرجى إخبارنا! ما عليك سوى الاتصال بنا عبر [email protected] ، أو فتح مشكلة في GitHub ، أو استخدام أي قناة اتصال أخرى أسهل بالنسبة لك - نريد ملاحظاتك

دعنا ننتقل إلى الميزات.

مواقع مكررة واستنساخ القرار

مع تزايد شعبية شبكات WaaS (WordPress as a Service) وشركات الاستضافة التي توفر التدريج بنقرة واحدة لسير عمل نشر الإنتاج ، ربما تكون قد تعاملت بالفعل مع العملاء الذين يشكون من مشكلات غير متوقعة عند تضمين تكرار الموقع.

باختصار ، الاستنساخ هو موقع ويب (أو موقع فرعي) له معرف فريد وزوج من المفاتيح العامة / السرية التي تم تعيينها بواسطة Freemius والمطابقة لمعرف ومفاتيح موقع ويب آخر. يمكنك معرفة المزيد حول الحيوانات المستنسخة ، وكيف يتم إنشاؤها عادةً ، ومتى يتم ذلك في هذا المستند.

مستوحى من واجهة مستخدم Jetpack ، يسعدني أن أشارك أن إصدار SDK هذا يأتي مع آلية لتعريف الاستنساخ وإدارتها وحلها بكامل الميزات. إنها قدرة كانت موجودة في النسخ الاحتياطي لبعض الوقت ، وأنا أشجعك بشدة على التعرف على مشكلة مواقع الويب المستنسخة وكيف يتعامل WordPress SDK معها لتحقيق أقصى استفادة من التحسين:

إشعار دقة الاستنساخ اليدوي Freemius SDK

نموذج ملاحظات التعطيل تحسينات UX

غفوة من أجل مستكشفات الأخطاء ومصلحاتها

بينما يوفر نموذج ملاحظات إلغاء التنشيط فرصة فريدة للمستخدمين لتقديم ملاحظات إلى مالكي المنتجات قبل أن يتخلوا عنها ، سمعنا على مر السنين شكاوى من أن المستخدمين يكرهون هذه الميزة حقًا. بعد تحليل التعليقات ، تمكنا من إرجاع هذا الشعور تحديدًا إلى قسم "مستكشفات الأخطاء ومصلحوها".

تعد تحديثات البرنامج المساعد مهمة شائعة يتعين على مشرفي مواقع الويب التعامل معها يوميًا. في بعض الأحيان ، قد يحدث خطأ في تحديث المكون الإضافي / السمة بسبب التعارضات والأخطاء وحالات عدم التوافق ، مما يتسبب في حدوث مشكلات وأخطاء غير متوقعة على الموقع. عادةً لا يتعمق القائمون على الصيانة في مستوى الشفرة ، لذا فإن عملية استكشاف الأخطاء وإصلاحها الشائعة هي تحديد سبب المشكلة مع إلغاء تنشيط المكون الإضافي وإعادة التنشيط ، متبوعًا بتبديل السمة. بمعنى ، تحتاج إلى إلغاء تنشيط المكونات الإضافية واحدة تلو الأخرى حتى يتم حل المشكلة ، ثم إعادة تنشيطها بشكل فردي وبنفس الترتيب الذي تم إلغاء تنشيطها فيه. من الناحية النظرية ، يجب أن يساعد هذا في عزل المكون الإضافي "الإشكالي" ، ولكن إذا لم يكشف عن المشكلة ، فيجب أن تكون المحاولة التالية هي "تبديل السمة".

نظرًا لتزايد "بصمة" السمات والإضافات التي تستخدم WordPress SDK ، يضيف نموذج ملاحظات التعطيل نقرة إضافية لكل إلغاء تنشيط. من هناك ، تؤدي إعادة تنشيط المكون الإضافي المدعوم من Freemius إلى إعادة التوجيه تلقائيًا إلى شاشة الاشتراك أو إلى صفحة إعدادات المكون الإضافي الرئيسية (بناءً على حالة الاشتراك) ، مما يضيف نقرة أخرى للعودة إلى صفحة المكونات الإضافية.

هذا يعني أن 5 مكونات إضافية فقط تستخدم Freemius على موقع ما يمكن أن تضيف 10 نقرات إضافية - وهو أمر مزعج بشكل مفهوم لأخصائيي استكشاف الأخطاء وإصلاحها. وعند إدارة 20 موقعًا ، على سبيل المثال ، تتراكم كل هذه النقرات بمرور الوقت ، وهو ما يفسر سبب عدم إعجاب بعض المشرفين على WordPress SDK.

بعد أن فهمنا الأسباب الكامنة وراء "الكراهية" ، توصلنا إلى حل بسيط لتخفيف "الألم" عن مستكشفات الأعطال ومصلحيها ، ونأمل أن نستعيد بعض ثقتهم.

يعرض نموذج الملاحظات بالفعل خيارًا يشير إلى أن إلغاء التنشيط مؤقت لاستكشاف الأخطاء وإصلاحها. لذا ، بدلاً من مجرد إرسال التعليقات على طريقتنا ...

  1. نعرض الآن خيارًا لتأجيل اللوحة من ساعة واحدة إلى 30 يومًا.
  2. نظرًا لأننا ندرك أنه لا يضيف أي قيمة لأصحاب المنتجات ، فإن اختيار الغفوة يتخطى إرسال التعليقات إلى Freemius تمامًا.
  3. أخيرًا ، إذا قام المسؤول بتأجيل النموذج ، فسيتم إيقاف إعادة التوجيه لفترة الغفوة.

نموذج ملاحظات Freemius WordPress SDK غفوة

ستؤثر الغفوة فقط على المسؤول الحالي الذي قام بتسجيل الدخول وستعمل عبر جميع المكونات الإضافية والسمات التي تعمل بنظام Freemius والمثبتة على موقع الويب هذا.

يمكن أن توفر تجربة المستخدم المحسنة هذه الكثير من النقرات لأدوات استكشاف الأخطاء وإصلاحها "الثقيلة" ، ونحن متحمسون لرؤية الفرق الذي ستحدثه.

تفعيل "إلغاء التنشيط" مع تعليقات "أخرى" فارغة

لتشجيع المستخدمين على إرسال التعليقات ، يمكنك التصرف بناءً عليها ، في السابق ، عندما حدد المستخدم الخيار "أخرى" في نموذج ملاحظات التعطيل ، تم تغيير حالة الزر "إرسال وإلغاء التنشيط" إلى "تعطيل حتى يدخل المستخدم بعض المدخلات لشرح" سبب آخر.

تم لفت انتباهنا إلى أن تجربة المستخدم هذه كانت مشكلة لأن المستخدمين يقرؤون من أعلى اليسار والبعض يختار هذا الخيار لأنهم ببساطة لا يريدون تقديم أي ملاحظات. IE ، إذا اختاروا هذا الخيار قبل أن يلاحظوا أن هناك خيارًا لـ "تخطي وإلغاء التنشيط" ، فإنه يعطي الانطباع بأنه من المستحيل إلغاء تنشيط المنتج دون تقديم أي ملاحظات.

الآن ، عند تحديد الخيار "أخرى" وكان مربع الشرح فارغًا ، يتم تمكين الزر وتسميته "إلغاء التنشيط":

نموذج ملاحظات Freemius WordPress SDK سبب آخر

ومن الواضح أنه لن يتم إرسال أي بيانات إلى نهايتنا لأن التعليقات الفارغة "الأخرى" غير مجدية.

حالة خانة الاختيار الافتراضية للتعليقات المجهولة

إذا تخطى أحد المستخدمين خيار الاشتراك واختار تقديم ملاحظات باستخدام نموذج ملاحظات إلغاء التنشيط ، بشكل افتراضي ، لم تكن التعليقات مجهولة المصدر للسماح لك بالاتصال بالمستخدم إذا لزم الأمر. يقدم هذا الإصدار من SDK مرشحًا جديدًا بحيث يمكنك التحكم في وضع الإرسال الافتراضي لنموذج الملاحظات وتغييره إلى ملاحظات مجهولة افتراضيًا ، باستخدام ما يلي:

my_fs()->add_filter( 'default_to_anonymous_feedback', '__return_true' );

مزيج ملكية أصول المستخدم - انتهى!

يتم إجراء نسبة صحية من مشتريات WordPress الإضافية والقوالب بواسطة "البناة" ، حيث يتم تسليم المشروع في النهاية إلى عملائهم. لتسهيل العلاقة ، نقدم قدرًا جيدًا من المرونة للسماح بتغيير ملكية أصول الحساب من شخص إلى آخر.

من دون الخوض في الجوانب الفنية ، مع تشغيل الملايين من مواقع الويب الخاصة بنا SDK ، وجدنا العديد من الحالات المتطورة التي اختلطت بشكل غير متوقع الأصول بين الحسابات. في حين أن هذه المشكلات كانت نادرة الحدوث ، فمن المؤلم بالنسبة للعميل ولك ولنا أن نصلحها.

إذا كانت هناك مسابقة لأكثر المشكلات إزعاجًا واستهلاكًا للوقت ، فهذه هي الفائز بلا منازع في 2020-2021 إنها أيضًا مثال جيد على المكان الذي يمنح فيه قدرًا كبيرًا من المرونة دون محاولة توقع جميع حالات الاستخدام (وأنت لا تفعل ذلك أبدًا will) يمكن أن يسبب ضررًا أكثر من النفع.

لم نقم فقط بإضافة بعض القيود في الواجهة الخلفية لتقليل حالات المشكلة ، ولكن إصدار WordPress SDK الجديد يعزز أيضًا تجربة تحديث البريد الإلكتروني للحساب مع مدخلات إضافية من المستخدم ، ويتعامل مع كل حالة بشكل مختلف قليلاً:

تحديث عنوان البريد الإلكتروني لـ Freemius WordPress SDK

إصلاح HTTP 404 غير موجود (AKA "لا توجد تحديثات")

قد يكون بعضكم قد تلقى تذاكر دعم حيث اشتكى العملاء من أن SDK تتسبب في حدوث أخطاء وتبطئ النظام ، عادةً مع لقطة شاشة تكميلية لخطأ من Debug Log (أو ملحقات تصحيح أخطاء أخرى).

تحديث البرنامج المساعد مراقبة الاستعلام Freemius API 404 غير موجود

تم إرجاع أخطاء HTTP في حالة عدم وجود إصدارات أحدث ، وهو السلوك المتوقع لتطبيق RESTful API المناسب عند عدم وجود مورد.

نظرًا لأنه ليس من التافه أن نفهم أن هذا السلوك متوقع حتى الاتصال بنا ، وقد أدى إلى إنشاء تذاكر دعم غير ضرورية لك (ولنا) ، فقد قمنا بتعديل رمز استجابة HTTP إلى 200 لإزالة هذا الالتباس بشكل نهائي. تم نشر تغيير واجهة برمجة التطبيقات هذا بالفعل منذ عدة أسابيع ، لذلك هناك فرصة جيدة لأنك لاحظت أن هذا النوع من الشكوى قد اختفى.

إذا نظرنا إلى الوراء ، فإننا ندرك الآن أنه كان يجب علينا إجراء هذا التغيير في وقت مبكر. إنه في بعض الأحيان أن الشيء التقني "الصحيح" لا يكون "مناسبًا" للمستخدم النهائي.

التسامح مع أخطاء الاتصال في الخلفية

قبل بضعة أسابيع ، تعرضت AWS لوقت تعطل مؤقت. نظرًا لأننا نستضيف خوادمنا على Amazon ، بطبيعة الحال ، تسبب وقت التعطل في حدوث مشكلات في الاتصال بخادم API الخاص بنا. تمت إضافة مواقع الويب التي تم تنفيذ cron الخاص بها لمزامنة Freemius خلال تلك الفترة بإشعار قابل للرفض حول مشكلة الاتصال ، مما تسبب في مجموعة من استفسارات الدعم من المستخدمين المعنيين. الغرض من الإشعار هو تسليط الضوء على مشكلات الاتصال المستمرة بسبب جدران الحماية ، وحالات انسداد مزود خدمة الإنترنت ، وما إلى ذلك. لذلك ، قمنا بتحسين المنطق من خلال وضع آلية للتسامح مع الخطأ ، لذلك لن تتم إضافة الإشعار إلا بعد 3 محاولات اتصال فاشلة متتالية (عادةً 3 أيام).

حل وظائف الشبكة متعددة المواقع المهملة

تم wpmu_new_blog() و deleted_blog() في WP 5.1 ، والذي كان يرسل إشعارًا عند التشغيل في وضع التصحيح. قمنا بتحديث التكامل متعدد المواقع لاستخدام wp_insert_site() و wp_delete_site() في المقابل عند التشغيل على إصدارات WordPress الجديدة. شكرًا داريو كيرفينو على مساهمتك 🙌

مرشحات جديدة

قدمنا ​​مرشح hide_freemius_powered_by جديد للسماح لك بإخفاء علامة التبويب Powered by Freemius من الصفحات التي تم إنشاؤها بواسطة SDK:

my_fs()->add_filter( 'hide_freemius_powered_by', '__return_false' );

وفلتر آخر اسمه hide_billing_and_payments_info لإخفاء سجل الفواتير والمدفوعات الذي يظهر افتراضيًا للعملاء في صفحة الحساب:

my_fs()->add_filter( hide_billing_and_payments_info', '__return_true' );

تفعيل ترخيص "مجهول" - نسمعك!

كشركة ناشئة أو أي نوع من الأعمال التجارية ، لديك موارد محدودة في البداية. ينصب التركيز الأول على ملاءمة المنتج / السوق ، وهو ما يجبرك بطبيعة الحال على تحديد الأولويات وتقديم التضحيات. عندما بدأنا Freemius ، كان تحليلنا لسوق WordPress هو أن DIYers يمثلون أكبر نسبة من المستخدمين في النظام البيئي. لذلك ، تم تصميم بعض الممارسات وتجربة المستخدم لهذا الجزء. مع نضوجنا ، بذلنا جهدًا هائلًا في العامين الماضيين لتطبيق الملاحظات التي تم جمعها على مر السنين لتلبية احتياجات القائمين على الصيانة والبناة بشكل أفضل. في حين أن هذه نسبة أقل بكثير من مستخدمي WordPress ، إلا أنها شغوفة ومهمة للغاية!

في هذه المرحلة ، تم بالفعل دمج الغالبية العظمى من التعليقات السلوكية التي تم تلقيها على مر السنين في WordPress SDK. ولكن لا يزال هناك طلب واحد متكرر يأتي عادةً من المستخدمين البارعين في التكنولوجيا ولديهم حساسية أعلى للخصوصية: "لماذا أحتاج إلى الاشتراك عند تنشيط مفتاح الترخيص؟"

بينما نقوم بجمع بعض المقاييس الأساسية التي تفيد المستخدمين وصانعي المنتجات عند تنشيط الترخيص - مثل إصدار WordPress ، وإصدار PHP ، ولغة موقع الويب (يتم توثيق المعلومات الكاملة في صفحة ممارسات البيانات الجديدة الخاصة بنا) - إنه لمن دواعي قلقنا أننا يريد معالجته حتى يتمكن المستخدمون من الاستمتاع بمنتجاتك بثقة.

لذلك ، في الإصدار التالي ، نخطط لتقديم خيار جديد لتنشيط الترخيص دون مشاركة البيانات غير الضرورية لتفعيل الترخيص وتسليم التحديثات. بدلاً من إعادة تشغيل بنية البيانات ، سنقوم بإخفاء البيانات بقيم وهمية لتوفير أقصى قدر من الخصوصية. ضع في اعتبارك أنه لا يزال يتعين علينا جمع عنوان URL لموقع الويب وعنوان IP وإصدار SDK وما إذا كان المنتج نشطًا أم غير نشط. لكن هذا كل شيء!

حتى المرة القادمة

هل لديك ملاحظات حول تفعيل الترخيص "المجهول" القادم؟ هل لديك أي ميزات تريد منا أن نفكر فيها؟ لا تتردد في إضافتها إلى لوحة Trello الخاصة بنا ، وفي هذه الأثناء ، نتمنى لك بيعًا سعيدًا!