it-swarm.asia

إضافة حقول إضافية إلى نموذج الاتصال بالموقع

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

17
Purplemonkey

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

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

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

20
Pierre Buyle

يعتمد ذلك على الوحدة النمطية التي تستخدمها لنموذج الاتصال الخاص بك. ستوفر بعض الوحدات واجهة خلفية لا تتطلب برمجة لإضافة حقول إضافية. الوحدة النمطية الشائعة جدًا مع هذه الوظيفة هي Webform.

باستثناء ذلك ، يمكن تعديل النماذج في Drupal بكتابة وحدة مخصصة باستخدام هوك hook_form_alter. هناك الكثير من البرامج التعليمية حول تطوير mdoule واستخدام هذا هوك معين.

1
mesch

إذا كنت تستخدم وحدة الاتصال الأساسية ، نأمل أن حقول نموذج الاتصال قد تنتهي الوحدة قريبًا Drupal 7.

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

إذا كنت تريد شيئًا الآن: 4 خيارات:

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

(إضافة هذا للبحث عن ساحة بوت ؛))

1
Robin

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

استمتع!

0
Druvision