امتداد:ContactPage
حالة الإصدار مستقر |
|
|---|---|
| تنفيذ | صفحة خاصة, وصلة |
| بيان | يقدم نموذج اتصال للزوار |
| المؤلف/المؤلفون | Daniel Kinzler, Sam Reed |
| آخر إصدار | Continuous updates |
| سياسة التوافق | تصدر اللقطات البرمجية مع ميدياويكي. الإصدار الرئيسي لا يتوافق مع الإصدارات السابقة. |
| PHP | 5.4+ |
| تغييرات قاعدة البيانات | لا |
| ترخيص | رخصة جنو العمومية 2.0 أو ما بعدها |
| التنزيل | README |
| مثال | nl.wikipedia.org |
|
|
| ترجم الامتداد ContactPage لو كان متوفرا على translatewiki.net | |
| دور فاغرانت | contactpage |
| المسائل | المهام المفتوحة · الإبلاغ عن عطل تقني |
ينفّذ امتداد ContactPage نموذج اتصال مخصص للزوار. يستحدث الامتداد صفحة خاصة تحمل اسم «Special:Contact»، وهي مشابهة للصفحة «Special:EmailUser»، إلا أنها تحتوي على متلقي واحد محدد، ويمكن استخدامها دون تسجيل.
التنصيب والإعداد
- نزّل الملف/الملفات وضعها في دليل يحمل اسم
ContactPageداخل مجلد extensions/ لديك.
يجب على مطوري البرمجيات والمساهمين بالكود البرمجي تثبيت الامتداد من غت بدلا من ذلك، مستخدمين:cd extensions/ git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/ContactPage
- أضف الكود التالي في الجزء الأسفل من ملف LocalSettings.php:
wfLoadExtension( 'ContactPage' ); $wgContactConfig['default'] = [ 'RecipientUser' => null, // يتعيّن أن يكون اسم حساب صالح ملحق به حساب بريد إلكتروني جرى التأكد من صحته. 'RecipientEmail' => 'Contact Form on ' . $wgSitename, // يجب ترجمة 'Contact Form on' 'RecipientName' => null, 'SenderEmail' => null, // القيمة الافتراضية هي $wgPasswordSender، يجوز تغييرها حسب الحاجة 'SenderName' => null, 'RequireDetails' => false, 'IncludeIP' => false, 'MustBeLoggedIn' => false, 'MustHaveEmail' => false, // القيمة «True» تعني أن المستخدم الذي يرفع النموذج يتعين أن يكون لديه عنوان بريد إلكتروني 'NameReadonly' => false, 'EmailReadonly' => false, 'SubjectReadonly' => false, 'UseCustomBlockMessage' => false, 'Redirect' => null, 'RLModules' => [], // تضيف الوحدات البرمجية لتحميل الموارد إلى صفحة تحميل النموذج. 'RLStyleModules' => [], // تضيف الوحدات البرمجية لتحميل موارد سي إس إس إلى صفحة عرض النموذج. 'AdditionalFields' => [ 'Text' => [ 'label-message' => 'emailmessage', 'type' => 'textarea', 'required' => true ] ], 'FieldsMergeStrategy' => null ];
- طالع صفحة README file لمزيد من الخيارات للتخصيص والتكييف حسب الرغبة.
تم التنفيذ – اذهب إلى Special:Version على موقع الويكي لديك كي تتحقق من أن الامتداد قد ثبت بنجاح.
$wgCaptchaTriggers['contactpage'] = true;
تخصيص إضافي
إضافة وصلة شبكية إلى صفحة «اتصل بنا» خاصة إلى footer
- أضف الكود التالي (مستخدما معرف الموارد الموحد الصحيح) إلى ملف
LocalSettings.phpلديك:$wgHooks['SkinAddFooterLinks'][] = function( Skin $skin, string $key, array &$footerlinks ) { if ( $key === 'places' ) { $footerlinks['contact'] = Html::element( 'a', [ 'href' => 'https://www.example.org/wiki/Special:Contact', // معرف موارد موحد يذهب إلى صفحة «خاص:اتصال - Special:Contact» 'rel' => 'noreferrer noopener' // غير مطلوب، إلا أننا نحبذه لأسباب أمنية ], $skin->msg( 'contactpage-label' )->text() ); }; };
- أضف الوسم «Special:Contact» إلى رسالة النظام MediaWiki:Contactpage-label.
إنشاء نماذج معقدة
طالع HTMLForm والصفحات المعنية الأخرى لمزيد من المعلومات عن الإمكانات المحتملة لإنشاء المزيد من النماذج المعقدة.
يقدم Manual:HTMLForm Tutorial 3 المزيد من التفاصيل عن القيم التي يمكن استخدامها لأغراض قيمة type في الخانات المدرجة تحت AdditionalFields.
على سبيل المثال، يمكنك استخدام 'type': 'usersmultiselect' ليصبح لديك خانة تسمح باختيار عدة أسماء مستخدمين.
المشاكل
قد يتلقى مستخدمو بعض مقدمي خدمات الاستضافة مثل SiteGround وAmazon SES رسالة خطأ لبريد بي إتش بي أو رسالة مفادها أن عنوان المرسِل غير مضبوط في الخادم، رغم أن $wgPasswordSender مضبوطا ضبطا صحيحا ووظائف البريد الإلكتروني الأخرى تعمل كما يرام.
تصويب هذه المشكلة مبيّن هنا.
انظر أيضا
- Extension:EmailPage - يسمح بإرسال مقالات معروضة كاملةً تحتوي على سي إس إس مدمج إلى مستخدمين أو مجموعات أو قوائم اتصال
- Extension:CIForms - نماذج تحتوي على أسئلة تحقق آلية أو أسئلة اختيار من متعدد أو اختبارات
| هذا الامتداد يستخدم على واحد من مشاريع ويكيميديا أو أكثر من واحد. يعني هذا الأمر أن الامتداد مستقر ويعمل/تعمل جيدا بما فيه الكفاية ليستخدم/لتستخدم في مواقع تتمتع بمستوى زيارات مرتفع مثل هذه. ابحث عن اسم هذا الامتداد في ملفات الضبط CommonSettings.php وكذلك InitialiseSettings.php كي ترى أين تنصب. توجد قائمة كاملة بالامتدادات المنصبة على موقع ويكي بعينه على صفحة Special:Version الخاصة بموقع الويكي. |
| هذا الامتداد مشمول في الحزم أو مزارع الويكي التالية أو كليهما: هذه ليست قائمة كاملة. بعض مزارع الويكي أو الاستضافة أو حزم البرمجيات قد تحتوي على هذا الامتداد حتى لو كانت غير مدرجة هنا. راجع دائمًا مزرعة الويكي أو المستضيف أو حزمة البرمجيات للتأكد من ذلك. |
- Stable extensions/ar
- Special page extensions/ar
- Hook extensions/ar
- GPL licensed extensions/ar
- Extensions in Wikimedia version control/ar
- All extensions/ar
- Extensions used on Wikimedia/ar
- Extensions included in Canasta/ar
- Extensions included in Miraheze/ar
- Extensions included in ProWiki/ar
- Extensions included in WikiForge/ar
- Contact form extensions/ar
