آموزش وردپرس | بلاگ وب‌داده

فعال‌سازی ارسال پست توسط کاربران در وردپرس

می‌خواهید بازدیدکنندگان یا اعضای سایت بتوانند از خودِ سایت (نه پیشخوان) مطلب بفرستند؟ در این راهنما گام‌به‌گام یاد می‌گیرید فرم ارسال پست فرانت‌اند بسازید، آن را در برابر اسپم امن کنید و محتوای کاربران را پیش از انتشار بازبینی کنید.
ارسال پست توسط کاربران یعنی این امکان که مخاطبان سایت بتوانند بدون دسترسی به پیشخوان وردپرس، از طریق یک فرم در خودِ صفحه‌ی سایت، نوشته و تصویر ارسال کنند. این قابلیت برای سایت‌های خبری مشارکتی، مجله‌های چندنویسنده، آگهی کاربران و بخش «داستان شما» عالی است. در این مقاله ساده‌ترین و امن‌ترین راه راه‌اندازی آن را با افزونه‌ی رایگان و رسمی User Submitted Posts می‌بینید، همراه با روش بومی وردپرس و نکات امنیتی.
  • دو مسیر اصلی: یا از نقش کاربری «مشارکت‌کننده»ی خود وردپرس استفاده می‌کنید، یا یک افزونه‌ی فرم فرانت‌اند نصب می‌کنید.
  • افزونه‌ی پیشنهادی: User Submitted Posts رایگان است، +10,000 نصب فعال و امتیاز 4.8 از 5 دارد و فارسی هم پشتیبانی می‌شود.
  • بازبینی قبل از انتشار: وضعیت پست ارسالی را روی «پیش‌نویس» یا «در انتظار بازبینی» بگذارید تا هیچ چیز بدون تأیید شما منتشر نشود.
  • امنیت مهم‌تر از راه‌اندازی است: بدون کپچا (reCAPTCHA یا Turnstile) فرم فرانت‌اند هدف اسپم می‌شود.
  • نمایش با شورت‌کد: فقط با درج یک شورت‌کد ساده، فرم در هر نوشته، برگه یا ابزارک نمایش داده می‌شود.

در یک نگاه

برای اینکه کاربران از فرانت‌اند سایت مطلب بفرستند، افزونه‌ی User Submitted Posts را نصب کنید، وضعیت پست را روی «در انتظار بازبینی» بگذارید، یک کپچا فعال کنید و شورت‌کد [user-submitted-posts] را در یک برگه قرار دهید. بستر مطمئن وردپرس و پشتیبانی راه‌اندازی را می‌توانید از وب‌داده بگیرید.
حتماً این مقاله را باز کرده‌اید چون می‌خواهید مشارکت کاربران را در تولید محتوای سایتتان فعال کنید، اما نگرانید کار فنی و پیچیده باشد یا سایت پر از محتوای اسپم شود. خبر خوب این است که این کار کاملاً شدنی و کنترل‌شده است؛ در ادامه همه‌چیز را از پیش‌نیازها تا امنیت و عیب‌یابی، ساده توضیح می‌دهیم.

ارسال پست توسط کاربران در وردپرس چیست و چه کاربردی دارد؟

به‌طور پیش‌فرض، در وردپرس فقط کسانی که در پیشخوان حساب کاربری دارند می‌توانند نوشته منتشر کنند. اما گاهی می‌خواهید درِ سایت را به روی مشارکت مخاطبان باز کنید؛ یعنی بازدیدکننده یا عضو سایت، بدون ورود به محیط مدیریت و فقط با یک فرم ساده در صفحه‌ی سایت، مطلبش را بفرستد. به این کار «ارسال پست فرانت‌اند» (Front-end posting) هم می‌گویند.
این قابلیت در چند موقعیت واقعاً به کار می‌آید:
  • سایت‌های خبری و مجله‌های مشارکتی: مخاطبان گزارش یا مقاله می‌فرستند و شما بازبینی و منتشر می‌کنید.
  • بخش تجربه و داستان کاربران: کاربران تجربه‌ی خرید یا استفاده‌شان را به‌صورت پست ثبت می‌کنند.
  • آگهی و دایرکتوری: کاربران آگهی، معرفی کسب‌وکار یا رویداد ثبت می‌کنند.
  • وبلاگ چندنویسنده: نویسندگان مهمان بدون دسترسی کامل به پیشخوان مطلب ارسال می‌کنند.

فرق «فرانت‌اند» و «پیشخوان» را بدانید

در روش پیشخوان، کاربر باید وارد محیط مدیریت وردپرس شود که برای افراد غیرفنی گیج‌کننده است. در روش فرانت‌اند، کاربر همان‌جا در صفحه‌ی سایت یک فرم می‌بیند و بدون دیدن پیشخوان مطلب می‌فرستد. برای مشارکت عمومی، تجربه‌ی فرانت‌اند به‌مراتب ساده‌تر و حرفه‌ای‌تر است.
نمای فرم ارسال پست توسط کاربران در فرانت‌اند وردپرس با افزونه User Submitted Posts

پیش‌نیازها: قبل از شروع این‌ها را آماده کنید

راه‌اندازی این قابلیت پیچیده نیست، اما سه چیز را از قبل آماده داشته باشید تا کار روان پیش برود:

۱) دسترسی مدیر وردپرس

برای نصب افزونه و تغییر تنظیمات به یک حساب با نقش «مدیرکل» نیاز دارید. اگر تازه سایت را راه انداخته‌اید، همان کاربر اصلی نصب وردپرس این دسترسی را دارد.

۲) یک برگه برای فرم

بهتر است یک برگه‌ی اختصاصی مثل «ارسال مطلب» بسازید تا فرم را داخل آن قرار دهید. همچنین تصمیم بگیرید محتوای کاربران در کدام دسته ثبت شود.

۳) کلید کپچا (اختیاری ولی مهم)

برای جلوگیری از اسپم، بهتر است از قبل کلیدهای Google reCAPTCHA یا Cloudflare Turnstile را آماده کنید. اگر نمی‌خواهید، دست‌کم «سوال چالشی» افزونه را فعال کنید.

چرا کپچا را جدی بگیرید؟

هر فرمی که روی فرانت‌اند سایت باز باشد، خیلی زود هدف ربات‌های اسپم قرار می‌گیرد. افزونه‌ی User Submitted Posts چند لایه‌ی ضداسپم دارد (کپچا، فیلد مخفی و اعتبارسنجی ورودی)؛ دست‌کم یکی از آن‌ها را حتماً فعال کنید تا صندوق پست‌های در انتظار بازبینی پر از هرزنامه نشود.

راه‌اندازی فرم ارسال مطلب با افزونه User Submitted Posts

ساده‌ترین و رایج‌ترین راه، استفاده از افزونه‌ی رایگان و رسمی User Submitted Posts (به‌اختصار USP) ساخته‌ی Jeff Starr است. این افزونه یک فرم فرانت‌اند کامل با مدیریت اسپم و بازبینی در اختیارتان می‌گذارد. کار را در پنج قدم انجام می‌دهیم.

قدم اول: نصب و فعال‌سازی افزونه

در پیشخوان وردپرس به مسیر «افزونه‌ها ← افزودن» بروید، عبارت «User Submitted Posts» را جست‌وجو کنید، افزونه‌ی ساخته‌ی Jeff Starr را نصب و سپس فعال کنید. این افزونه سبک است و روی وردپرس نسخه‌ی 4.7 به بالا و PHP نسخه‌ی 5.6.20 به بالا کار می‌کند.

قدم دوم: تنظیم فیلدها و وضعیت پست

پس از فعال‌سازی، به مسیر «تنظیمات ← User Submitted Posts» بروید. اینجا مشخص می‌کنید فرم چه فیلدهایی داشته باشد: نام، ایمیل، عنوان نوشته، دسته، برچسب، متن و آپلود تصویر. مهم‌ترین گزینه، «وضعیت پست ارسالی» است؛ آن را روی Pending Review (در انتظار بازبینی) یا Draft (پیش‌نویس) بگذارید تا هیچ مطلبی بدون تأیید شما منتشر نشود.

هرگز وضعیت را روی Publish نگذارید

افزونه امکان انتشار خودکار (Publish) پست‌های کاربران را هم دارد، اما این کار بسیار پرخطر است؛ محتوای تأییدنشده می‌تواند اسپم، تبلیغ یا مطلب نامناسب باشد. همیشه وضعیت را روی «در انتظار بازبینی» بگذارید و خودتان پیش از انتشار محتوا را بخوانید.
صفحه‌ی تنظیمات افزونه User Submitted Posts و انتخاب فیلدها و وضعیت پست ارسالی

قدم سوم: فعال‌کردن لایه‌ی ضداسپم

در همان صفحه‌ی تنظیمات، بخش امنیت را پیدا کنید. می‌توانید Google reCAPTCHA (نسخه‌ی v2 یا v3)، Cloudflare Turnstile یا یک «سوال چالشی» ساده را فعال کنید. اگر می‌خواهید کپچای گوگل به‌جای انگلیسی به فارسی نمایش داده شود، این قطعه کد را در فایل functions.php قالب فرزند قرار دهید:
// تغییر زبان کپچای گوگل به فارسی؛ این کد را در functions.php قالب فرزند قرار دهید
function usp_recaptcha_querystring( $query ) {
    return 'fa';
}
add_filter( 'usp_recaptcha_querystring', 'usp_recaptcha_querystring' );

قدم چهارم: نمایش فرم با شورت‌کد

حالا برگه‌ای که در پیش‌نیازها ساختید (مثلاً «ارسال مطلب») را باز کنید و شورت‌کد زیر را در آن درج کنید. افزونه چند شورت‌کد کاربردی دارد؛ مهم‌ترین‌ها این‌ها هستند:
# نمایش فرم ارسال پست در هر نوشته یا برگه (ادیتور را روی حالت متن/بلاک بگذارید)
[user-submitted-posts]

# نمایش فهرست پست‌های ارسال‌شده توسط کاربران
[usp_display_posts]

# نمایش فرم ورود / ثبت‌نام / بازیابی رمز عبور
[usp-login-form]

شورت‌کد را در بلاک درست بگذارید

طبق راهنمای رسمی افزونه، هنگام درج شورت‌کد از بلاک «کد کوتاه» یا ادیتور متن ساده استفاده کنید. اگر شورت‌کد را از یک صفحه‌ی وب کپی و در ادیتور دیداری بچسبانید، ممکن است داخل تگ code بیفتد و فرم درست نمایش داده نشود.

قدم پنجم: مدیریت و انتشار پست‌های ارسالی

از این پس هر مطلبی که کاربران بفرستند در پیشخوان، بخش «نوشته‌ها»، با وضعیت «در انتظار بازبینی» ظاهر می‌شود. کافی است آن را باز کنید، ویرایش یا بازبینی کنید و در صورت تأیید، منتشرش کنید. می‌توانید افزونه را طوری تنظیم کنید که با هر ارسال، یک ایمیل اطلاع‌رسانی هم برایتان بیاید.
مدیریت پست‌های در انتظار بازبینی ارسال‌شده توسط کاربران در پیشخوان وردپرس

سه روش دریافت مطلب از کاربران؛ کدام مناسب شماست؟

برای همین هدف چند مسیر دارید. جدول زیر کمک می‌کند بدانید کدام روش به نیاز شما نزدیک‌تر است:
معیارنقش «مشارکت‌کننده» (بومی وردپرس)افزونه User Submitted Postsفرم‌ساز (مثل WPForms)
ورود کاربر لازم است؟بله، از پیشخواناختیاری (قابل تنظیم)معمولاً خیر
تجربه‌ی فرانت‌اندندارددارددارد
مدیریت اسپم/کپچامحدودداخلی (reCAPTCHA/Turnstile)افزودنی/داخلی
آپلود تصویر توسط کاربربله (در پیشخوان)بله (نسخه‌ی رایگان)بسته به افزودنی
هزینهرایگانرایگان (نسخه‌ی Pro اختیاری)رایگان محدود / پولی
مناسب براینویسنده‌ی مهمانِ آشنا به وردپرسمشارکت عمومی مخاطبانفرم‌های سفارشی و پیشرفته

جمع‌بندی جدول

اگر فقط چند نویسنده‌ی مهمانِ آشنا با وردپرس دارید، نقش «مشارکت‌کننده»ی خودِ وردپرس بدون هیچ افزونه‌ای کافی است. برای مشارکت عمومیِ مخاطبان از فرانت‌اند، افزونه‌ی User Submitted Posts متعادل‌ترین گزینه است: رایگان، سبک و با مدیریت اسپم داخلی. اگر به فرم‌های خیلی سفارشی با فیلدهای پیچیده نیاز دارید، یک فرم‌ساز عمومی مثل WPForms انعطاف بیشتری می‌دهد اما پیکربندی و هزینه‌ی بالاتری دارد.

روش بومی وردپرس، امنیت و معایبی که باید بدانید

اگر نمی‌خواهید افزونه نصب کنید و کاربرانتان با وردپرس آشنا هستند، خودِ وردپرس یک راه ساده دارد: نقش کاربری «مشارکت‌کننده» (Contributor). این نقش می‌تواند نوشته بنویسد اما نمی‌تواند آن را منتشر کند؛ نوشته در حالت «در انتظار بازبینی» می‌ماند تا مدیر تأیید کند.

فعال‌کردن روش نقش مشارکت‌کننده

به «تنظیمات ← همگانی» بروید، گزینه‌ی «هرکسی می‌تواند ثبت‌نام کند» (Membership) را تیک بزنید و «نقش پیش‌فرض کاربران تازه» را روی «مشارکت‌کننده» بگذارید. از این پس کاربران ثبت‌نام می‌کنند، از پیشخوان نوشته می‌فرستند و شما بازبینی می‌کنید. عیب این روش این است که کاربر باید وارد پیشخوان شود که برای افراد غیرفنی تجربه‌ی خوبی نیست. اگر می‌خواهید فرم را داخل قالب و بدون پیشخوان نشان دهید، از تمپلیت‌تگ افزونه‌ی USP استفاده کنید:
<?php
// نمایش فرم ارسال پست در هر نقطه از قالب (مثلاً در sidebar.php یا single.php)
if ( function_exists( 'user_submitted_posts' ) ) {
    user_submitted_posts();
}
?>

معایب و محدودیت‌هایی که باید بدانید

صادقانه بگوییم، دریافت محتوا از کاربران بدون دردسر نیست. نخست، ریسک اسپم و محتوای بی‌کیفیت جدی است؛ بدون کپچا و بازبینی، سایت پر از هرزنامه می‌شود. دوم، نسخه‌ی رایگان افزونه فقط آپلود تصویر را پشتیبانی می‌کند و برای ویدیو و فایل‌های دیگر باید سراغ نسخه‌ی Pro بروید. سوم، هر افزونه‌ی فرم مقداری بار جاوااسکریپت و CSS به سایت اضافه می‌کند که روی هاست ضعیف می‌تواند سرعت را کم کند. چهارم، روش بومی نقش مشارکت‌کننده کاربر را وارد پیشخوان می‌کند که تجربه‌ی کاربری ایده‌آلی نیست. و در نهایت، مسئولیت حقوقی محتوای منتشرشده بر عهده‌ی شماست، پس بازبینی انسانی را هرگز حذف نکنید.

مرجع رسمی درباره‌ی این افزونه

طبق توضیح رسمی در مخزن افزونه‌های وردپرس، «افزونه‌ی User Submitted Posts یک فرم فرانت‌اند فراهم می‌کند که به بازدیدکنندگان امکان می‌دهد نوشته ارسال و تصویر آپلود کنند.» این افزونه هم‌اکنون بیش از 10,000 نصب فعال و امتیاز 4.8 از 5 دارد. منبع: صفحه‌ی رسمی افزونه در WordPress.org.

میزبانی وردپرس روی هاست وب‌داده

بخشی از تجربه‌ی خوبِ فرم‌های ارسال محتوا و آپلود تصویر کاربران، به بستر هاست برمی‌گردد: منابع کافی برای پردازش فرم‌ها، فضای مناسب برای تصاویر ارسالی، و پشتیبانی که وقتی افزونه‌ای دردسر ساخت کمکتان کند. ما در وب‌داده تلاش کرده‌ایم این‌ها را فراهم کنیم:
✅ زیرساخت سرورهای نسل جدید HPE (Gen11 و Gen10) با دیسک‌های سریع برای پاسخ‌دهی بهتر فرم‌ها و رسانه.
✅ دیتاسنترهای متنوع در ایران، هلند و آلمان برای انتخاب نزدیک‌ترین لوکیشن به کاربران شما.
✅ کنترل‌پنل به‌همراه ابزار بکاپ برای اینکه پیش از نصب افزونه‌ی جدید نسخه‌ی پشتیبان داشته باشید.
✅ پشتیبانی فنی ۲۴ ساعته برای کمک در نصب افزونه، تنظیم کپچا و رفع خطاهای احتمالی.

تجربه‌ی پشتیبانی وب‌داده

در تیم پشتیبانی وب‌داده بارها پیش آمده که کاربری بعد از فعال‌کردن فرم ارسال پست، با موجی از پست‌های اسپم روبه‌رو شده است. الگوی حل تقریباً همیشه یکی است: اول یک کپچا (reCAPTCHA یا Turnstile) روی فرم فعال می‌کنیم، بعد وضعیت پست را روی «در انتظار بازبینی» می‌گذاریم و در نهایت فیلدهای غیرضروری فرم را حذف می‌کنیم تا سطح حمله کمتر شود. همین چند تنظیم ساده، مشکل اسپم را به‌کلی برطرف می‌کند.
اگر به‌دنبال بستری ساده و مطمئن برای وردپرس هستید، می‌توانید هاست سی‌پنل وب‌داده را ببینید که برای اجرای روان وردپرس بهینه شده است. اگر هم می‌خواهید از صفر شروع کنید، مطلب آموزش نصب وردپرس روی سی‌پنل و راهنمای جعبه‌ابزار وردپرس در هاست سی‌پنل کمکتان می‌کند.

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

جمع‌بندی و چک‌لیست نهایی

دیدیم که باز کردن درِ سایت به روی مشارکت کاربران، کار سختی نیست: یا از نقش «مشارکت‌کننده»ی خودِ وردپرس استفاده می‌کنید، یا با افزونه‌ی رایگان User Submitted Posts یک فرم فرانت‌اندِ امن و ساده می‌سازید. مهم‌ترین نکته، امنیت و بازبینی است؛ تا وقتی کپچا فعال و وضعیت پست روی «در انتظار بازبینی» باشد، کنترل کامل محتوا دست شماست. چک‌لیست زیر را پیش از تمام‌کردن کار مرور کنید.

چک‌لیست سریع راه‌اندازی

✅ افزونه‌ی User Submitted Posts را نصب و فعال کردم.
✅ فیلدهای فرم را انتخاب و وضعیت پست را روی «در انتظار بازبینی» گذاشتم.
✅ دست‌کم یک لایه‌ی ضداسپم (کپچا یا سوال چالشی) را فعال کردم.
✅ یک برگه ساختم و شورت‌کد [user-submitted-posts] را در آن گذاشتم.
✅ یک فرم آزمایشی فرستادم و مطمئن شدم در «در انتظار بازبینی» ظاهر می‌شود.
✅ یک صفحه‌ی «قوانین ارسال مطلب» آماده کردم و بازبینی انسانی را جدی گرفتم.
در صورتی که سوالی داشتید می‌توانید در بخش نظرات با ما در ارتباط باشید.
وب داده
وب داده

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

مقاله‌ها: 60
پاسخی بگذارید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *