مفاتيح الاستيفاء لتخصيص قوالب النص ورسائل البريد الإلكتروني للنظام

:bookmark: تقدم هذه الدليل نظرة تفصيلية على مفاتيح الاستبدال (Interpolation Keys) المستخدمة في تخصيص النصوص وقوالب رسائل البريد الإلكتروني للنظام في Discourse.

:person_raising_hand: مستوى المستخدم المطلوب: مسؤول

أثناء تخصيص النصوص في Discourse أو تخصيص قوالب رسائل البريد الإلكتروني المحددة، قد تكون لاحظت وجود متغيرات نائبة متاحة في بعض القوالب.

في Discourse، نطلق على هذه المتغيرات اسم مفاتيح الاستبدال.

فهم مفاتيح الاستبدال

مفاتيح الاستبدال هي متغيرات نائبة متاحة في قوالب Discourse معينة. تتيح لك إدراج محتوى ديناميكي في نصوصك وقوالب رسائل البريد الإلكتروني.

مثال على مفاتيح الاستبدال لقالب رسالة البريد الإلكتروني Account Created:

سيتم استبدال هذه المفاتيح، مثل %{username} أو %{site_name}، بالبيانات الفعلية عند إرسال البريد الإلكتروني.

بشكل عام، يمكن نقل هذه المتغيرات النائبة داخل القالب الذي تنتمي إليه، لكنها متاحة فقط في ذلك القالب ولا يمكن نقلها إلى قوالب مختلفة، حيث تعتمد جميعها على كود الخادم المرتبط بالقالب المقابل.

ومع ذلك، تسمح مجموعات قوالب معينة بإضافة مفاتيح استبدال إضافية تتجاوز تلك الموجودة بالفعل في القالب الافتراضي.

مفاتيح استبدال إضافية

رسالة ترحيب المستخدم للنظام

لقوالب system_messages.welcome_user، يمكنك إضافة المفاتيح الإضافية التالية:

  • username: اسم مستخدم المستخدم
  • name: الاسم الكامل للمستخدم
  • name_or_username: إما الاسم الكامل للمستخدم أو اسم المستخدم

تُقدَّم هذه القيم بواسطة فئة SystemMessage أثناء التشغيل (راجع system_message.rb للكود المرتبط في Discourse).

رسائل البريد الإلكتروني لإشعارات المستخدمين

لقوالب user_notifications وقوالب البريد الإلكتروني ذات الصلة (بما في ذلك unsubscribe_mailing_list و unsubscribe_link)، تتوفر العديد من المفاتيح الإضافية، بما في ذلك topic_title و username و site_name و url و unsubscribe_url وغيرها.

للحصول على القائمة الكاملة والمحدثة لجميع مفاتيح الاستبدال المخصصة المسموح بها ومجموعات القوالب التي تنطبق عليها، راجع ALLOWED_CUSTOM_INTERPOLATION_KEYS في كود مصدر Discourse لملف translation_override.rb.

9 إعجابات

هذا ليس صحيحًا. حاليًا، يعمل هذا فقط مع system_messages.welcome_user، ولكن يمكننا توسيعه ليشمل جميع المفاتيح الأخرى. هذه مادة مناسبة لـ pr-welcome.

4 إعجابات

شكراً لتنبيهك، تم تحديث ذلك في الدليل.

إعجابَين (2)

مرحباً!

كيف يمكنني تعديل قيمة بعض مفاتيح الاستيفاء هذه؟ على سبيل المثال، %{search_answer}

شكراً!

مرحباً!
يقول أن هذا المفتاح غير صالح:

ملاحظة:
أنا أستبدل في النص وليس البريد الإلكتروني (هل هذا يحدث فرقاً)؟ شكراً!

لا أعتقد أن هذه عالمية ومتاحة للاستخدام في كل مكان.

إعجاب واحد (1)

شكرًا لك @Jagster! أنا أستخدمها في تخصيص النص، لذا بناءً على المنشور، هل من المفترض أن تعمل؟

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

بالتأكيد، يمكن للمكونات الإضافية القيام بالكثير من الأشياء، ولكن هذه المرة ليس بشكل مباشر.

وإخلاء مسؤولية: أنا مجرد مستخدم نهائي آخر وقد أكون مخطئًا بشكل فظيع أيضًا. لكنني متأكد تمامًا من أنني على حق - وهذا هو سبب عدم نجاح محاولتك :man_shrugging:

حسنًا، شكرًا جزيلاً لدعمك. يبدو أنه لا يعمل حتى عند استخدامه في قالب بريد إلكتروني:

رهاني هو أنه يمكنك استخدام %{username} في قوالب “قام المستخدم بـ…”، وجميع القوالب الأخرى لا تدعمه.

لكن سنرى غدًا عندما يستيقظ جميع الخبراء.