فرم بازخورد Modx Revo Generator. MODX - فرم بازخورد (فرمت)

در MODX یک فرصت جالب وجود دارد - شما می توانید تغییر دهید ظاهر ویرایش منابع تقریبا به همان اندازه که می خواهید، شکل می گیرد. علاوه بر این، شما می توانید اشکال مختلف برای گروه های مختلف کاربر، و حتی برای منابع مختلف. شما می توانید پروفایل های مختلف فرم را انتخاب کنید از این منبع بسته به قالب، والدین یا خواص دیگر آن.

و برای این ما مجبور نیستیم یک خط کد را بنویسیم!

بیایید ببینیم، به عنوان مثال، شما می توانید با فرم ها انجام دهید:

اول، حذف موارد غیر ضروری منو بالا به یک آیتم عمومی - "توسعه دهنده". برای انجام این کار، به بخش "سیستم" بروید -\u003e بخش "اقدامات"، یک آیتم منو جدید را در ریشه ایجاد کنید و تمام نکات غیر ضروری را بکشید:

بعد به بخش "امنیت" بروید -\u003e "فرم تنظیم" و یک نمایه جدید ایجاد کنید، به عنوان مثال، "مدیر محتوا". سپس آن را با دکمه سمت راست ماوس فشار دهید و "Edit" را انتخاب کنید، به برگه «گروه های کاربر» بروید و یک گروه را به کدام قوانین جدید اعمال کنید.

بعد، ما مجموعه جدیدی از قوانین ایجاد می کنیم. دو نوع آنها یکی برای فرم ایجاد منابع است، دوم - برای ویرایش و به روز رسانی فرم (ایجاد و به روز رسانی به ترتیب). این قوانین ممکن است تا حدودی - حداقل توسط قانون برای هر منبع.

پس از ایجاد قانون، صفحه تنظیمات را مشاهده خواهید کرد - سه زبانه وجود دارد: اطلاعات مربوط به مجموعه قوانین، مناطق، زمینه های اضافی.

برگه اول لیست زمینه های استاندارد منابع را فهرست می کند. آنها را می توان خاموش یا تغییر داد. مناطق زبانه ها در منابع هستند. شما می توانید یک منطقه جدید ایجاد کنید و برخی از پارامترهای تلویزیونی را در آنجا قرار دهید، سپس آنها یک منبع را در برگه "زمینه های اضافی" قرار می دهند و در بخش جدید شما مشخص خواهید کرد. در اینجا شما می توانید زبانه های استاندارد مانند "گروه های منابع" را غیرفعال کنید.

در برگه سوم، محل پارامتر تلویزیون را مشخص می کنید.

من یک کابین کوچک را در مناطق استاندارد ساختم:



بنابراین، بیایید بلافاصله تمام زبانه ها را برای کاربر حذف کنیم، به جز اول. ما کنه ها را از مناطق حذف می کنیم: تنظیمات Modx-Page، Modx-panel-Resource-TV، MODX-Resource-Access-Permissions. علاوه بر این - از زمینه های استاندارد فقط pagetitle و نام مستعار را ترک خواهد کرد. بقیه چک جعبه ها تمیز می شوند. یک نام جدید را برای فیلد PageTitle مشخص کنید: "عنوان اخبار" و نام مستعار: "آدرس صفحه".

پس از آن، به برگه "زمینه های اضافی" بروید و نشان دهید که پارامترهای تلویزیونی باید در یک یا چند منطقه فرم (با توجه به CRIB) باشد.

باقی مانده است که مشخص شود، زیرا منابع این قانون معتبر است - در نقطه پاراگراف الگوی، ما منابع را نشان می دهیم که قالب هایی را برای اعمال قانون اعمال می کنیم. اگر قانون برای تمام قالب ها باشد، من هر چیزی را مشخص نمی کنم. و دو مورد وجود دارد: "زمینه محدود" و "محدودیت محدود". در اینجا شما می توانید بقیه زمینه ها را مشخص کنید.

بیایید اشاره کنیم که این قانون به منابع "اخبار" اشاره دارد - در "میدان محدود" پاراگراف نوشتن والدین.، و در "ارزش محدود" شناسه منبع "اخبار"، به عنوان مثال، 22 .

من در حال حاضر چند درس برای ایجاد فرم ها در فرمت در یک بسته نرم افزاری C - این بسته نرم افزاری به عنوان مزایای: ارسال فرم ها بدون راه اندازی مجدد، یک پنجره شنا وجود دارد که پیام فرستاده شده، و غیره وجود دارد. خوب، بر این اساس، منفی ها: JS و کد به کد اضافه می شوند. فایل CSS - چه چیزی منفی را به سرعت می دهد و در خروجی JS نوع لازم در تماس نیست، به دلیل آن، هشدار در اعتبار سنجی ظاهر می شود - لازم نیست آن را در HTML 5 مشخص کنید.

بنابراین، تصمیم گرفتم فرم ها را در فرم خالص بسازم، در مورد این امروز و درس بود.

نشانه گذاری فرم HTML اکنون کد زیر را دارد:

هیچ چیز خاصی نیست، بنابراین با طرح بندی بوت استرپ استاندارد صحبت کنید. من آن را دوباره انجام خواهم داد، با توجه به نحو و در یکی از ما افزایش قابل ملاحظه ای، Russify، اضافه کردن حفاظت در برابر هرزنامه:

[[! فرمت؟ & ooks \u003d `` هرزنامه، ایمیل & emailtpl \u003d `ایمیل-tpl` & emailto \u003d [[++ emailsender]]` & emailsubject \u003d `نامه از سایت [[++ site_url]]` & validate \u003d `WorkEmail: خالی، نام: مورد نیاز، ایمیل: ایمیل: مورد نیاز، پیام: مورد نیاز: Striptags، تلفن: مورد نیاز` & successmessage \u003d `

با تشکر از شما، درخواست تجدید نظر شما ارسال می شود.

`]]]] [[! + fi.successmessage: default \u003d` ``]]
[[! fi.error.name]]
[[! fi.rrror.phone]]
[[! fi.error.email]]
[[! fi.error.message]]

تجزیه و تحلیل کد، ما از بالا در پایین بروید:

و قلاب ها - قلاب های مختلف در اینجا اضافه شده، از جمله self-ins: در مورد ما، 2 استاندارد: Span - حفاظت ساده در برابر هرزنامه و ایمیل - اجباری، برای ارسال اطلاعات در صندوق پستی. در مورد بقیه قلاب ها، من به جزئیات در ویدئو می گویم.

& emailtpl - Chanc با طراحی نامه، کد زیر را دارد:

از آنها: [[+ نام]]

تلفن: [[+ تلفن]]

پست الکترونیکی: [[+ ایمیل]]

پیام: [[+ پیام]]

& emailto - آدرس پست الکترونیک جایی که فرم ها ارسال می شوند این مورد مشخص شده تنظیم سیستم (کلید) ++ emailserter

& emailsubject - موضوع نامه ارسال شده

& Validate - ما زمینه های مورد نیاز برای پر کردن و زمینه های مکرر را برای محافظت در برابر هرزنامه تجویز می کنیم

& successmessage - پیام پس از حمل و نقل موفقیت آمیز

من کد کد را که علاقه مند به تماشای ویدیو و خواندن مستندات هستم، جدا نخواهم کرد: docs.modx.com/extras/revo/formit

پیوستن فایل ها به شکل

به منظور قادر به پیوستن و ارسال پیوست ها، لازم است ثبت نام در برچسب قالب

encype \u003d "multipart / فرم داده"

و به ترتیب اضافه کردن زمینه برای پیوستن یک فایل

[[! + fi.error.upload]]

پردازش Chekboxers و گزینه

فرم های چندگانه در یک صفحه

فقط در تماس های هر فرم، نوشتن

& submitvar \u003d نام فرم به زبان انگلیسی

هر فرم نام خود را دارد.

مبارزه با اسپم

چگونه به پیچ و تاب، اما شما قطعا در سراسر هرزنامه - بیشتر روش موثر برای مبارزه با آن -، شما همچنین می توانید سعی کنید.

روز خوب! امروز من شما را معرفی خواهم کرد تا فرم بازخورد را برای انقلاب MODX ایجاد کنم، رئیس آن یک طرح غیر معمول خواهد بود (به عنوان Googlovsk Qaptcha بسیار پیچیده و سنگین است). انجام دادن بازخورد ما از فرم افزودنی استفاده خواهیم کرد. شما می توانید آن را نصب کنید، احتمالا خودتان، به خوبی، برای کسانی که نمی دانند چگونه این کار را انجام دهند، من هنوز یک درس از ابتدا تا انتها را قطع می کنم. شروع!

من تمام لحظات مربوط به نصب را از دست می دهم انقلاب MODX، راه اندازی سیستم، طراحی سایت جاسازی و غیره. بیایید با نصب بسته فرمت شروع کنیم.

1. به سیستم بروید - مدیریت بسته

2. روی "افزونه های بار" کلیک کنید

3. از لیست فرمت انتخاب کنید

روی "دانلود" کلیک کنید. پس از بارگذاری فرمت، شما در بسته های دانلود شده ظاهر می شود، روی دکمه نصب کلیک کنید. فرمت نصب شده!

4. بعد، یک چاه جدید ایجاد کنید

بیایید آن را "فرم" بنویسیم و کد زیر را وارد کنید:

[[! qaptcha]] [[! فرمت؟ & hooks \u003d `هرزنامه، ایمیل، redirect` & emailtpl \u003d` senmailtpl` & emailsubject \u003d `callback application` & emailto \u003d` آدرس ایمیل شما و redirectto \u003d `` `id ' با موفقیت ارسال شد "& validate \u003d` contact_name: مورد نیاز، contact_phone_na_format: مورد نیاز` & customvalidators \u003d `qaptcha.slider`]]

[[+ qaptcha.slider]]

در اینجا چالش فرمت قطعه، شکل و CAPTCHA است که ما در موارد زیر کار خواهیم کرد. فراموش نکنید در پارامتر ایمیل صندوق پستی را مشخص کنید که نامه باید باشد، و در redirecttoنیاز به قرار دادن صفحه id "نامه با موفقیت ارسال شده"

5. ایجاد Sentemailtpl Chank

او صحبت خواهد کرد، چه اطلاعاتی برای ارسال به ایمیل و وارد کردن کد وجود دارد:

نام: [[+ contact_name]]
ایمیل: [[+ contact_email]]
تلفن: [[+ contact_phone_na_format]]
توجه: [[+ contact_message]]

6. ایجاد یک سند جدید به نام "نامه با موفقیت ارسال"

در محتویات منبع شما می توانید نوع متن را وارد کنید: ما نامه شما را دریافت کردیم! متشکرم برای انتخاب شرکت ما. مدیر ما در کوتاه ترین زمان ممکن با شما تماس بگیرید در تماس با تلفن همراه که شما در برنامه ترک کرده اید!

7. حالا ما با Capacit مقابله خواهیم کرد

ما صفحه Bibilot جی کوئری را وصل می کنیم:

8. ایجاد کاتالوگ ها دارایی / اجزای / QAPTCHA / و هسته / اجزای / Qaptcha /

در فهرست دارایی / اجزای / QAPTCHA /ما پوشه تصویر و جی کوئری را با محتویات قرار می دهیم و در هسته / اجزای / Qaptcha / -پوشه PHP با فایل qaptcha.jquery

9. ایجاد قطعه Qaptcha

و کد زیر را وارد کنید:

regclientcss (modx_site_url. "دارایی / اجزای / Qaptcha / jQuery / qaptcha.jquery.css")؛ $ modx-\u003e regclerentscript (modx_site_url. "دارایی ها / قطعات / qaptcha / jQuery / jquery-ui.js")؛ $ modx-\u003e regclerentscript (modx_site_url. "دارایی / اجزای / Qaptha / jQuery / jquery.ui.Touch.js")؛ $ modx-\u003e regclientscript (modx_site_url. "دارایی / اجزای / Qaptcha / jQuery / qaptcha.jquery.js")؛ $ modx-\u003e setplaceholder ("qaptcha.slider"، "

") $ paramqAptcha \u003d آرایه ()؛ $ modx-\u003e getService (" lexicon "،" modlexicon ")؛ $ modx-\u003e lexicon-\u003e load (" Qaptcha: Default ")؛ $ txtlock \u003d $ modx-\u003e lexicon ( "انتقال لودر به سمت راست برای باز کردن") $ txtunlock \u003d $ modx-\u003e lexicon ("شما می توانید بر روی دکمه" ارسال "کلیک کنید)؛ اگر (خالی ($ disabledsubmit)) $ paramqaptcha \u003d" disabledsubmit: "disabledsubmit ؛ $ paramqAptcha \u003d "phpfile: \\" ". modx_site_url. "Core / components / qaptcha / php / qaptcha.jquery.php \\" "؛ $ paramqaptcha \u003d" txtlock: \\ "". $ txtlock. "\\" "؛ $ paramqaptcha \u003d" txtunlock: \\ "" $ txtunlock. " \\ "" $ paramqaptcha \u003d uncodode ("،"، $ paramqAptcha)؛ $ modx-\u003e regclienthtmlblock ("");

تمام اسکریپت ها و فایل های CSS بلافاصله از طریق آن متصل می شوند و PlaytyWaller نامیده می شود qaptcha.slider.

10. ما چنگ زدن به جایی که ما می خواهیم CAPTCH (و توجه: جایی که کتابخانه جی کوئری متصل است، آن را بدون کتابخانه کار نمی کند) و شادی نمی کند :))

تمام کارهای موفق و خلق و خوی آخر هفته خوب!

P.S. من یک ایده عالی دارم))) در "نسخه ی نمایشی" من ایمیل و تمام نامه هایی را که شما برای چک کردن کار اسکریپت به من می فرستید، قرار داده ام)) به لطف، من منتظر جوک ها هستم و کوچک هستم داستان از شما))

تقریبا تمام سایت های تجاری دارای صفحه ای از مخاطبین هستند که فرم تماس را از طریق آن کاربران می توانند ادارات سایت را بنویسند. امروز ما نگاه خواهیم کرد که چگونه سریع فرم تماس ایجاد کنیم. ما فرم بازخورد را با استفاده از یک بسته اجرا خواهیم کرد فرمت در یک بسته با یک بسته jaxform، آنها را نصب کنید اگر آنها نصب نشده باشند.

ایجاد فرم بازخورد در MODX Revo با مجوز پردازش داده های شخصی مطابق با قانون شماره 152-FZ "در اطلاعات شخصی" تاریخ 27 ژوئیه 2006.

اولین چیزی که ما یک چاه ایجاد می کنیم، که در آن فرم خود را ذخیره می شود، اجازه دهید آن را "Kontact-Form" بچرخانید و کد یک فرم استاندارد را وارد کنید، من اساسا وب سایت ها را با استفاده از بوت استرپ انجام می دهم، بنابراین من یک استاندارد را می گیرم خالی کمی تبدیل، کد استاتیک آن خواهد بود چنین خواهد بود:

توافق کاربر

ظاهر شما متفاوت خواهد بود، از آنجا که فرم من تحت پروژه تلطیف شده است، سبک های CSS معنی را نمی بینند.

در اینجا شما می توانید فرم های دیگر را ببینید. getbootstrap.com/css/#forms.

و در حال حاضر من کد را به پویا با توجه به نحو هدایت می کنم فرمت و jaxform، من زیر را دریافت می کنم.

[[+ fi.error.name]]
[[+ fi.error.email]]
[[+ fi.error.pfone]]
[[+ fi.error.message]]

با قرار دادن علامت، من رضایت خود را به پردازش اطلاعات شخصی من مطابق با قانون شماره 152-FZ "بر روی داده های شخصی" ژوئیه 27، 2006، رضایت می دهم و شرایط موافقتنامه کاربر را قبول می کنم

[[+ fi.success: is \u003d `1`: سپس \u003d`
[[+ fi.successmessage]]
`]]] [[+ fi.validation_error: is \u003d` 1`: سپس \u003d `
[[+ fi.validation_error_message]]
`]]

در حال حاضر ما یک چاه دیگر را ایجاد می کنیم که یک نامه را تشکیل می دهد، اجازه دهید آن را با محتوای TPL-kontact با محتوای زیر تماس بگیریم:

نام: [[+ نام]]

ایمیل: [[+ ایمیل]]

تلفن: [[+ Pfone]]

پیام: [[+ پیام]]

خوب، در جای مناسب نتیجه گرفتم:

[[! ajaxform؟ & snippet \u003d `formit` & form \u003d` kontact-form` & emailtpl \u003d `tpl-kontact-form` & hooks \u003d` spam، ایمیل` & emailsubject \u003d 'پیام از سایت [[++ site_url]] `& emailto \u003d ` [ایمیل محافظت شده]`& validate \u003d` نام: مورد نیاز، ایمیل: مورد نیاز` & validationerRormessage \u003d `در فرم حاوی خطاها!` & successmessage \u003d `پیام با موفقیت ارسال شد!`]]]

فراموش نکنید که ارزش را تغییر دهید ایمیل در ایمیل شما

مستندات اجزاء:

  1. فرمتdocs.modx.com/extras/revo/formit.
  2. jaxformdocs.modx.pro/components/ajaxform

این اساسا آن است!

برای ایجاد یک فرم در MODX بدون هرزنامه، لازم است آن را با زمینه های نامرئی اضافی ایجاد کنید:

1. اجزای AJAXFORM و فرمت را دانلود و نصب کنید

2. فرم بسیار ساده است، شما باید دریابید

[[! ajaxform؟ & snippet \u003d `formit` & form \u003d` tpl.ajaxform..ru `& emailto \u003d` [ایمیل محافظت شده]site` & Validate \u003d `نام: مورد نیاز، ایمیل: مورد نیاز، پیام: مورد نیاز، Work-Email: Blank` & ValidationerRormessage \u003d` فرم حاوی خطاها است! `& successmessage \u003d" متشکرم برای برنامه! ما در آینده نزدیک با شما تماس خواهیم گرفت. & emailtpl \u003d `mafterpl`]]

یا از طریق Fenom Shablanizer، مانند این:

($ _modx-\u003e runsnippet ("Ajaxform"، ["snippet" \u003d\u003e "formit"، "فرم" \u003d\u003e "tpl.ajaxform.example"، "قلاب" \u003d\u003e "ایمیل، هرزنامه" "emailfrom" \u003d\u003e " [ایمیل محافظت شده]"،" emailsubject "\u003d\u003e" برنامه از سایت daruse.ru "،" emailto "\u003d\u003e" [ایمیل محافظت شده]"،" معتبر "\u003d\u003e" نام: مورد نیاز، ایمیل: مورد نیاز، پیام: مورد نیاز، Work-Email: Blank "،" ValidationerRMessage "\u003d\u003e" در فرم حاوی خطاها است! "،" successmessage "\u003d\u003e" متشکرم کاربرد! ما در آینده نزدیک با شما تماس خواهیم گرفت. "،" emailtpl "\u003d\u003e" mailtpl "،]))

شرح پارامترها:

  • snippet - قطعه برای پردازش AJAXFORM، SET FORMIT - فقط نامه ها را می فرستد
  • فرم - طراحی فرم Chanka، کسی است که پیش فرض است
  • قلاب - قلاب برای محافظت در برابر هرزنامه
  • emailFrom - آدرس که از آن نامه می آید
  • ایمیل - آدرس که نامه می آید
  • validate - اعتبارسنجی، در اینجا دو فیلد نامرئی
  • validationerRormessage - پیامی که خروجی خواهد بود، با ورود موفقیت آمیز از زمینه ها
  • successMessage - یک پیام که زمانی که موفق به ارسال یک نامه نمایش داده می شود
  • emailTPL - Chank، که در آن قالب نامه ورودی در پست الکترونیکی ذخیره می شود (در مورد آن در زیر بخوانید)

3. پس از آن، ما به تکه های طراحی شکل ما می رویم، در این مورد TPL.AJAXFORM.EXAMPLE و بعد از برچسب فرم، دو فیلد زیر اضافه می شود.

...

در حال حاضر فرم شما نباید هرزنامه باشد، به دلیل دو فیلد جدید.

4. نوع خارجی از نامه ورودی

به طور پیش فرض، نامه بدون هر فرمت در فرمت بسیار قابل خواندن به ایمیل می آید. بنابراین، بیایید کمی حرف خود را در مثال قرار دهیم.

قالب نامه یک چاه ساده است که ما در پارامتر مشخص می کنیم emailtpl، همه چیز بسیار ساده است، من نمونه ای از ثبت نام خواهم نوشت. اگر سوالی دارید، در نظرات بنویسید.

mailTPL:

برخط [[++ site_url]] یک برنامه را ترک کرد

[[+ نام: notempty \u003d `

نام: [[+ نام]]

`]]] [[+ ایمیل: notempty \u003d`

ایمیل: [[+ ایمیل]]

`]]] [[+ پیام: notempty \u003d`

پیام: [[+ پیام]]

`]]

لطفا در آینده نزدیک با او تماس بگیرید.

به این نامه پاسخ ندهید، همانطور که اتوماتیک است.

در مورد ایجاد و حفاظت از اسپم بخوانید.