| ملخص | تتيح إضافة “اشتراكات Discourse” لمالكي المواقع بيع اشتراكات دورية أو مشتريات لمرة واحدة تمنح الوصول إلى مجموعة في مثيل Discourse. | |
| دليل التثبيت | تُدرج هذه الإضافة ضمن نواة Discourse. لا حاجة لتثبيت الإضافة بشكل منفصل. |
تتيح لك إضافة اشتراكات Discourse إنشاء اشتراكات لمرة واحدة بالإضافة إلى اشتراكات دورية يمكن للمستخدمين دفع ثمنها للوصول إلى محتوى مقيد. يمكن أن تكون هذه طريقة رائعة لتمويل تكاليف استضافة مجتمعك.
الميزات
تدعم إضافة اشتراكات Discourse الميزات التالية:
- إنشاء منتجات وخطط جديدة من لوحة الإدارة
- إلغاء الاشتراكات واسترداد أموالها من لوحة الإدارة
- إنشاء خطط اشتراك لمرة واحدة أو دورية
- إضافة فترات تجريبية مجانية للاشتراكات الدورية
- دعم SCA/3D Secure
- إضافة/إزالة المستخدمين من مجموعات الخطط عند الاشتراك/الإلغاء
- إلغاء الاشتراك من ملف المستخدم الشخصي
- إلغاء الاشتراك في نهاية فترة الاشتراك
- دعم اختياري لـ Stripe Checkout
- حساب وجمع ضريبة المبيعات تلقائيًا
- يمكن للمستخدمين تحديث بطاقتهم للاشتراكات الفردية
سيأخذك زر “اشترك” الموجود في شريط التنقل العلوي إلى صفحة الاشتراك /s حيث يتم سرد الاشتراكات التي قمت بتكوينها لموقعك:
بمجرد أن ينقر المستخدم على أحد أزرار “اشترك” لخطة معينة، ستفتح صفحة الدفع لتلك الخطة:
بعد أن يملأ المستخدم تفاصيل الدفع وعنوانه ويضغط على “اشترك”، سيظهر له رسالة “شكرًا لك!” وسيتم نقله إلى صفحة الفواتير:
يتم أيضًا إضافة المستخدم تلقائيًا إلى مجموعة تختارها حتى تتمكن بسهولة من رؤية المستخدمين الذين اشتراكوا، بالإضافة إلى توفير محتوى مقيد في فئات يمكن فقط لهذه المجموعة رؤيتها.
المصطلحات
- الاشتراك - الاشتراكات هي خطة دفع دورية تتيح لك التحكم في الوصول إلى المحتوى في مجتمعك. عند إنشاء اشتراك أو حذفه، يتم إضافة أو إزالة مستخدم من مجموعة المستخدمين المرتبطة بخطة اشتراكك. يتكون الاشتراك من منتج وخطط.
- المنتج - المنتج في مصطلحات Stripe هو ما تبيعه. يمكن أن يحتوي المنتج على خطة واحدة أو أكثر.
- لإضافة وصف لمنتجك، أضف حقل بيانات وصفية باسم “description” واستخدمه بدلاً من ذلك. يمكنك استخدام Markdown.
- الخطة - تحتوي الخطة على سعر، ودورة دورية، وترتبط بمجموعة يحصل مشتركوها على حق الوصول إليها.
كن حذرًا جدًا في الحفاظ على مفاتيحك الخاصة في Stripe آمنة ومحمية في جميع الأوقات.
إذا قمت بإيقاف تشغيل مثيل Discourse الخاص بك، أو قمت بإلغاء تثبيت هذه الإضافة، أو إذا أصبح موقعك غير متصل بالإنترنت، سيستمر Stripe في فرض رسوم على عملائك مقابل خدمتك حتى يتم إلغاء الاشتراك.
التكوين
- تثبيت وتفعيل الإضافة
- تكوين بوابة الدفع (Stripe)
- تكوين الويب هوك والأحداث في Stripe
- أضف مفاتيح Stripe (العامة، السرية، سر الويب هوك) تحت Admin > Plugins > Installed > Subscriptions > Settings
/admin/site_settings/category/discourse_subscriptions?filter=plugin%3Adiscourse-subscriptions. - إنشاء مجموعة ينضم إليها مشتركوك عبر الشراء
- إنشاء منتج وخطة تحت Admin > Plugins > Subscriptions
- الربح!
إعداد بوابة الدفع الخاصة بك.
أولاً، ستحتاج إلى حساب مع بوابة الدفع Stripe. للبدء، يمكنك إعداد حساب في وضع الاختبار ومعرفة كيفية عمل كل شيء دون إجراء أي معاملات حقيقية أو الحاجة إلى إعداد حساب بنكي. لا يوجد مفتاح تبديل لوضع الاختبار في الإضافة؛ بدلاً من ذلك، تأكد من استخدام مفاتيح المطور (تبدأ بـ pk_test، sk_test)
إعداد الويب هوك والأحداث في حساب Stripe الخاص بك
الويب هوك مطلوب لجعل إلغاء الاشتراكات يعمل بشكل كامل. تأكد من تكوينها بشكل صحيح.
بمجرد أن يكون لديك حساب على Stripe، ستحتاج إلى إخبار Stripe بعنوان موقعك الإلكتروني حتى يتمكن من إشعارك بشأن معاملات معينة. يمكنك إدخال ذلك في لوحة تحكم Stripe تحت Endpoints > URL.
عنوان الويب هوك: [عنوان خادمك]/s/hooks – حيث [عنوان خادمك] هو عنوان URL لتثبيت Discourse الخاص بك.
ستحتاج أيضًا إلى إخبار Stripe بالأحداث التي يجب أن يبلغك عنها عبر عنوان الويب هوك.
حاليًا، تستجيب اشتراكات Discourse للأحداث التالية:
customer.subscription.deletedcustomer.subscription.updatedcheckout.session.completed
إضافة مفاتيح API و الويب هوك من Stripe إلى إعدادات الإضافة
يجب أن يكون Stripe مخولًا للتواصل مع موقعك الإلكتروني. للقيام بذلك، ينشر Stripe زوجًا من المفاتيح الخاصة والعامة لـ API و سر توقيع لويب هوك الخاص بك.
لإذن الويب هوك، أضف مفاتيح API وسر الويب هوك من Stripe إلى صفحة الإعدادات الخاصة بك (تحت Developers).
إضافة مفاتيح الإنتاج سيجعل المدفوعات حية. إذا كنت تخطط للاختبار، فتأكد من التبديل إلى وضع
View test dataوالحصول على مفاتيحpk_testوsk_testتحت Developers.
في إعدادات حساب Stripe الخاص بك، انظر إلى:
أضف هذه المفاتيح تحت الإعدادات المناسبة في Admin > Plugins > Installed > Subscriptions > Settings /admin/site_settings/category/discourse_subscriptions?filter=plugin%3Adiscourse-subscriptions.
إعداد مجموعات المستخدمين في Discourse
عندما يشترك المستخدم بنجاح في تطبيق Discourse الخاص بك، بعد معالجة معاملة بطاقة الائتمان الخاصة به، يتم إضافته إلى مجموعة مستخدمين. من خلال تعيين المستخدمين إلى مجموعة مستخدمين، يمكنك إدارة ما يمكن للمستخدمين الوصول إليه على موقعك الإلكتروني. تعد مجموعات المستخدمين وظيفة أساسية في Discourse، ولا تفعل هذه الإضافة أي شيء معها إلا إضافة وإزالة المستخدمين من المجموعة المرتبطة بخطة اشتراكك.
إنشاء منتج واحد أو أكثر مع خطط.
تحت Admin > Plugins > Subscriptions، انقر على إضافة منتج جديد. بمجرد حفظ المنتج، يمكنك إضافة خطط إليه. ضع في اعتبارك أنه لا يمكن تغيير أسعار ودورات الفوترة للخطط بمجرد إنشائها. هذا لتجنب الارتباك حول إدارة الاشتراكات.
إذا نظرت إلى لوحة تحكم Stripe، فسترى أن جميع هذه المنتجات والخطط مدرجة. لا تنشئ اشتراكات Discourse هذه محليًا. يتم إنشاؤها في Stripe.
الاختبار
اختبر باستخدام أرقام بطاقات الائتمان التالية:
- 4242 4242 4242 4242
- 4111 1111 1111 1111 (لا يتطلب مصادقة)
- 4000 0027 6000 3184 (يتطلب مصادقة)
لمزيد من أرقام بطاقات الاختبار: Test card numbers | Stripe Documentation
قم بزيارة /s وقم بإدخال بعض معاملات الاختبار.
الانتقال إلى الإنتاج
بمجرد أن تكون مستعدًا للانتقال إلى الإنتاج، قم بتغيير مفاتيح API وسر الويب هوك إلى مفاتيح الإنتاج. ستحتاج إلى إنشاء منتجات وخطط جديدة في وضع الإنتاج.
كن على علم أنه إذا لم تقم بتكوين ويب هوك Stripe بشكل صحيح، وفشلت المدفوعات الدورية في المعالجة لأي سبب (انتهاء صلاحية بطاقة الائتمان، وما إلى ذلك)، فسيظل المستخدمون لديهم وصول إلى المجموعة. لكي يقوم Stripe بإلغاء الاشتراكات تلقائيًا، تأكد من تعيين إعدادات إدارة المدفوعات الفاشلة الخاصة بك مشابهة للصورة أدناه وتكوين الويب هوك كما هو موضح أعلاه.
تحديث معلومات الدفع
يمكن للمستخدمين تحديث البطاقة المستخدمة للاشتراكات الفردية من خلال زيارة صفحة الفواتير والنقر على زر التحرير بجوار الاشتراك، والذي سيفتح هذه الشاشة:
Stripe Checkout مع جداول أسعار Stripe
يمكنك أيضًا اختيار استبدال صفحات المنتجات والدفع الخاصة بإضافة الاشتراكات واستخدام Stripe Checkout مع جداول أسعار Stripe.
في لوحة تحكم Stripe:
- بعد إنشاء المنتجات على Discourse، انتقل إلى Products > Product catalog
- انقر على المنتج الذي ترغب في تضمينه في جدول الأسعار
- انقر
Edit product More Optionsوأدخل ما يلي تحتMetadata:- Key:
group_name - Value: اسم المجموعة على Discourse (على سبيل المثال،
trust_level_0)
- Key:
- انقر
Update productللحفظ
تأكد من تطابق اسم المجموعة مع المجموعة المحددة تحت
User_Groupsعلى Discourse
إنشاء جدول أسعار Stripe الخاص بك
- انتقل إلى Products > Pricing tables
- أنشئ جدولًا جديدًا وأضف المنتجات التي أنشأتها للتو
- بعد نشر الجدول، انسخ معرف جدول الأسعار الموجود داخل كود التضمين (يبدأ بـ
prctbl_...) - الصق معرف جدول الأسعار في
discourse_subscriptions_pricing_table_idوقم بتفعيل إعداد جدول أسعار الاشتراكات. - انقر على علامات الاختيار الخضراء لحفظ كلا الإعدادين.
خطوة موصى بها:
عند إعداد جدول الأسعار داخل Stripe، يُنصح بربط المستخدم بموقعك بعد اكتمال عملية الشراء، وإلا سيظلون في صفحة تأكيد Stripe دون رابط للعودة إلى موقعك.
يُعد إعادة التوجيه إلى https://<your-site>/my/billing/subscriptions خيارًا جيدًا للاشتراكات. بالنسبة للمدفوعات لمرة واحدة، يمكنك الربط مباشرة إلى https://<your-site>/my/billing/payments.
جمع الضرائب تلقائيًا
لتفعيل جمع الضرائب تلقائيًا، ضع علامة في مربع إعدادات الموقع لـ discourse_subscriptions_enable_automatic_tax.
إذا قمت بتفعيله، ولكنك لم تقم بتكوين مثيل Stripe الخاص بك بشكل صحيح لجمع الضرائب، فقد يرى المستخدمون هذه النافذة المنبثقة بعد إكمال عملية الشراء:
هناك هذا الدليل لمزيد من المعلومات، ولكن لا يجب أن يكون هناك الكثير للقيام به لأن الإضافة تمرر الآن المعلمة المناسبة automatic_tax[enabled]=true (الخطوة 5).
تأكد من تكوين تسجيلاتك (الخطوة 4) أيضًا:
إليك مثال على معاملة إضافة اشتراكات Discourse في Stripe يظهر أن الضريبة تم جمعها تلقائيًا:
الإعدادات
| الاسم | الوصف |
|---|---|
| discourse subscriptions enabled | تفعيل إضافة اشتراكات Discourse. |
| discourse subscriptions extra nav subscribe | إظهار زر الاشتراك في شريط التنقل الرئيسي |
| discourse subscriptions public key | مفتاح Stripe القابل للنشر |
| discourse subscriptions secret key | مفتاح Stripe السري |
| discourse subscriptions webhook secret | سر ويب هوك Stripe |
| discourse subscriptions currency | رمز العملة الافتراضي. يمكن تجاوز ذلك عند إنشاء خطة اشتراك. |
| discourse subscriptions campaign enabled | تفعيل لافتة حملة لتعزيز الدعم المالي لهذا المجتمع. |
| discourse subscriptions campaign goal | الهدف الرقمي لحملة الدعم الخاصة بك (المشتركين أو المبلغ المجمع). |
| discourse subscriptions campaign type | تحديد نوع الحملة لتشغيلها (المشتركين أو المبلغ الشهري المجمع). |
| discourse subscriptions campaign banner location | تحديد موقع لافتة الحملة (أعلى أو الشريط الجانبي). |
| discourse subscriptions campaign banner bg image | رفع صورة مخصصة لاستخدامها كخلفية في لافتة الحملة. |
| discourse subscriptions campaign banner shadow color | تحديد لون ظل السقوط في لافتة الحملة. |
| discourse subscriptions campaign show contributors | إظهار صور الرموز المميزة لأحدث مشتريات منتجات الاشتراك. |
| discourse subscriptions campaign product | معرف منتج Stripe المرسل للداعمين عند النقر على الزر في الحملة. إذا كان هذا الإعداد فارغًا، سيتم توجيه الداعمين إلى صفحة المنتجات الرئيسية. |
| discourse subscriptions campaign grant | يمنح المستخدم شهرًا مجانيًا من الاشتراكات |
| discourse subscriptions pricing table id | معرف جدول أسعار Stripe من كود التضمين |
| discourse subscriptions pricing table enabled | تفعيل استخدام جدول أسعار Stripe واستبدال صفحة الاشتراك الحالية |
| discourse_subscriptions_enable_automatic_tax | التبديل لتحديد ما إذا كانت ضريبة المبيعات سيتم جمعها. يتطلب بعض الإعداد في Stripe. |
| discourse_subscriptions_enable_verbose_logging | تفعيل تسجيل أكثر تفصيلاً للمساعدة في تصحيح الأخطاء. يرجى عدم تركه مفعلاً بشكل دائم في الإنتاج. |
مستضاف بواسطةنا؟ تتوفر هذه الإضافة في خطط الاستضافة Pro و Business و Enterprise الخاصة بنا Subscriptions | Discourse - Civilized Discussion















