افزونه All-in-One Security (AIOS)
- ورود وردپرس
- 5164
افزونه Really Simple CAPTCHA به تنهایی کار نمیکند و برای کار با سایر افزونهها در نظر گرفته شده است. این افزونه در اصل برای فرم تماس ۷ ساخته شده است ، با این حال، میتوانید آن را با افزونه خودتان نیز استفاده کنید.
توجه: همانطور که از نام ، افزونه کپچا فرم تماس7، پیداست «واقعاً ساده» است، یعنی امنیت بالایی ندارد. اگر به امنیت کامل نیاز دارید، باید راهحلهای دیگری را امتحان کنید.
برخلاف بسیاری از راهحلهای دیگر PHP CAPTCHA، افزونه Really Simple CAPTCHA از «Sessions» در PHP برای ذخیره حالتها استفاده نمیکند، بلکه آنها را به صورت فایلهای موقت ذخیره میکند. این به شما امکان میدهد بدون نگرانی از تداخل، آن را در وردپرس جاسازی کنید.
وقتی یک CAPTCHA تولید میکنید، Really Simple CAPTCHA دو فایل برای آن ایجاد میکند؛ یکی فایل تصویری CAPTCHA و دیگری فایل متنی است که پاسخ صحیح به CAPTCHA را ذخیره میکند.
دو فایل پیشوند (تصادفی) یکسانی در نام فایلهای خود دارند، برای مثال، “a7hk3ux8p.png” و “a7hk3ux8p.txt”. در این حالت، برای مثال، وقتی پاسخدهنده “K5GF” را به عنوان پاسخ به تصویر “a7hk3ux8p.png” میدهد، Really Simple CAPTCHA هش “K5GF” را محاسبه کرده و آن را با هش ذخیره شده در فایل “a7hk3ux8p.txt” مقایسه میکند. اگر این دو با هم مطابقت داشته باشند، پاسخ به عنوان پاسخ صحیح تأیید میشود.
توجه: در زیر دستورالعملهایی برای توسعهدهندگان افزونه،کپچا فرم تماس7 ، آمده است.
ابتدا، یک نمونه از کلاس ReallySimpleCaptcha ایجاد کنید:
$captcha_instance = new ReallySimpleCaptcha();
شما میتوانید متغیرهای نمونه را به دلخواه تغییر دهید.
// Change the background color of CAPTCHA image to black
$captcha_instance->bg = array( 0, 0, 0 );
اگر به متغیرهای دیگر علاقه دارید، به really-simple-captcha.php مراجعه کنید.
یک کلمه تصادفی برای CAPTCHA تولید کنید.
$word = $captcha_instance->generate_random_word();
یک فایل تصویری و یک فایل متنی متناظر در دایرکتوری موقت ایجاد کنید.
$prefix = wp_rand();
$captcha_instance->generate_image( $prefix, $word );
سپس، تصویر را نشان دهید و از پاسخدهنده پاسخ بگیرید.
صحت پاسخ را بررسی کنید.
$correct = $captcha_instance->check( $prefix, $the_answer_from_respondent );
اگر $correct درست بود، ادامه بده. در غیر این صورت، پاسخدهنده را مسدود کن – زیرا به نظر نمیرسد انسان باشد.
و در آخر، فایلهای تصویری و متنی موقت را حذف کنید، زیرا دیگر مورد استفاده قرار نمیگیرند.
$captcha_instance->remove( $prefix );
همین و بس.
تکرار کد:
1) Default
Input this code: [captchac captcha-170]
[captchar captcha-170 4/4]
2) Small size, inverted
Input this code: [captchac captcha-778 size:s fg:#ffffff bg:#000000]
[captchar captcha-778 4/4]
3) Large size, green text
Input this code: [captchac captcha-118 size:l fg:#00ff00 bg:#ffffff]
[captchar captcha-118 4/4]
[submit “Send”]
اگر مایل به دیدن نمونه زنده این هستید، میتوانید [ویرایش: 2015-09-17] فرم تماس 7 نسخه 4.3 و بالاتر، reCAPTCHA را به جای Really Simple CAPTCHA توصیه میکند. برای جزئیات بیشتر، به فرم تماس 7 نسخه 4.3 مراجعه کنید .
فرم تماس ۷ به شما امکان میدهد یک کد امنیتی (CAPTCHA) در فرم تماس خود وارد کنید تا از ارسال فرم توسط رباتها جلوگیری شود. فرم تماس ۷ از Really Simple CAPTCHA به عنوان ماژول CAPTCHA رسمی خود استفاده میکند، بنابراین قبل از استفاده از CAPTCHA در فرم خود، باید افزونه Really Simple CAPTCHA را نصب کنید.
ادامهی این مقاله، نحوهی استفاده از CAPTCHA با فرم تماس ۷ را توضیح میدهد، البته با این فرض که شما قبلاً Really Simple CAPTCHA را نصب کردهاید.
برای ایجاد تصاویر CAPTCHA در Really Simple CAPTCHA، لازم است کتابخانههای GD و FreeType PHP روی سرور شما نصب شده باشند. اگر از نصب آنها مطمئن نیستید، از مدیر سرور خود سوال کنید.
فرم تماس ۷ یک پوشه موقت ایجاد میکند و فایلهای CAPTCHA را در آنجا ذخیره میکند. در بیشتر موارد، محل پوشه موقت wp-content/uploads/wpcf7_captcha است ، اما بسته به تنظیمات شما میتواند متفاوت باشد.
این پوشه به صورت خودکار ایجاد میشود، اما گاهی اوقات ممکن است با مشکل مواجه شود. یک دلیل احتمالی برای این امر این است که پوشه والد مجوزهای نوشتن کافی ندارد. در چنین مواردی، میتوانید مجوزها را تغییر دهید یا یک پوشه را به صورت دستی ایجاد کنید.
برای اضافه کردن CAPTCHA به فرم تماس خود، باید از تگهای captchacand captcharform استفاده کنید.
captchacبه معنی CAPTCHA-Challenge است و نشان دهنده یک <img>عنصر برای یک تصویر CAPTCHA است. captcharبه معنی CAPTCHA-Response است و نشان دهنده یک <input type="text">عنصر برای یک فیلد ورودی پاسخ است.
یک captchacتگ همیشه باید با captcharتگی با همان نام جفت شود. برای مثال، تگهای نشان داده شده در زیر معتبر هستند:
[کپچا-۱] [کپچاچار-۱]
اما اینها نامعتبر هستند زیرا نامهای متفاوتی دارند. در این مورد، CAPTCHA و پاسخ آن مطابقت ندارند:
[کپچا-۲] [کپچا-۳]
captchacبه معنی چالش CAPTCHA است و یک تصویر CAPTCHA ( <img>در HTML) را نشان میدهد.
| گزینه | مثالها | توضیحات |
|---|---|---|
id:(شناسه) |
id:foo |
idمقدار ویژگی imgعنصر. |
class:(کلاس) |
class:bar |
classمقدار ویژگی imgعنصر. برای تنظیم دو یا چند کلاس، میتوانید از چندین class:گزینه استفاده کنید، مانند [captchac your-captcha class:y2008 class:m01 class:d01]. |
size:(اسمل) |
size:s |
اندازه تصویر. فقط size:s(60×20)، size:m(72×24) و size:l(84×28) موجود است. |
fg:#(هگز) |
fg:#ff0000 |
رنگ پیشزمینه تصویر. کد رنگ RGB را با فرمت هگز بعد از قرار دهید fg:#. |
bg:#(هگز) |
bg:#00ffff |
رنگ پسزمینه تصویر. کد رنگ RGB را با فرمت هگز بعد از قرار دهید bg:#. |
مثال:
[captchac your-captcha size:s fg:#ffffff bg:#000000]
captcharبه معنی CAPTCHA-Response است و یک فیلد ورودی پاسخ ( <input type="text">در HTML) را نشان میدهد.
| گزینه | مثالها | توضیحات |
|---|---|---|
id:(شناسه) |
id:foo |
idمقدار ویژگی inputعنصر. |
class:(کلاس) |
class:bar |
classمقدار ویژگی inputعنصر. برای تنظیم دو یا چند کلاس، میتوانید از چندین class:گزینه استفاده کنید، مانند [captchar your-captcha class:y2008 class:m01 class:d01]. |
مثال:
[کپچای شما]
توجه: این یک نسخه آزمایشی است. این فرم عملاً ایمیل ارسال نمیکند.
۱)
کد پیشفرض را وارد کنید:![]()
۲) اندازه کوچک، معکوس.
این کد را وارد کنید:![]()
۳) متن سبز با اندازه بزرگ
این کد را وارد کنید:![]()
مشاهده منبع فرم بالا:
1) Default
Input this code: [captchac captcha-170]
[captchar captcha-170 4/4]
2) Small size, inverted
Input this code: [captchac captcha-778 size:s fg:#ffffff bg:#000000]
[captchar captcha-778 4/4]
3) Large size, green text
Input this code: [captchac captcha-118 size:l fg:#00ff00 bg:#ffffff]
[captchar captcha-118 4/4]
[submit "Send"]
****
منبع:
Really Simple CAPTCHA
miraa1
https://wordpress.org/plugins/really-simple-captcha/