ترمز فرم تماس را بکشید!

افزونه‌ی Contact Form 7 کار اکثر وردپرسی‌ها رو برای ساخت فرم تماس آسون کرده و انصافا پلاگین بی‌دردسری هم هست. اما مشکل کوچکی هم داره و اونم لود شدن فایلهای js و css افزونه تو همه‌ی صفحات سایت هست. چند خط کد ساده میتونه بارگزاری این فایلها رو به صفحه‌ی مخصوص فرم محدود کنه و در نتیجه کمی سرعت لود سایت رو بالا ببره.

قدم اول متوقف کردن بارگزاری فایلهای مورد نظر هست. برای اینکار فایل wp-config.php رو باز کنین و این کدها رو بهش اضافه کنین:

define ('WPCF7_LOAD_JS', false); // Added to disable JS loading
define ('WPCF7_LOAD_CSS', false); // Added to disable CSS loading

قدم دوم و آخر اضافه کردن کدی هست که فایلها رو تو برگه‌ی تماس فراخوانی میکنه:

<?php
	if ( function_exists( 'wpcf7_enqueue_scripts' ) ) {
		wpcf7_enqueue_scripts();
		wpcf7_enqueue_styles();
	}
?>

اگر برای برگه‌ی تماس قالب خاصی در نظر نگرفتین کد رو به فایل page.php درست خط اول اضافه کنین. شبیه این:

<?php
	if ( function_exists( 'wpcf7_enqueue_scripts' ) ) {
		wpcf7_enqueue_scripts();
		wpcf7_enqueue_styles();
	}
?>
<?php get_header(); ?>

وگرنه کد رو تو پوسته‌ی دلخواهتون به این صورت قرار بدین:

<?php

/*

Template Name:contact

*/

?>
<?php
	if ( function_exists( 'wpcf7_enqueue_scripts' ) ) {
		wpcf7_enqueue_scripts();
		wpcf7_enqueue_styles();
	}
?>
  1. یاسر :

    آقا محسن یه سوال داشتم.
    سایت gtmetrix بهم ثابت کرد که این افزونه فرم تماس ۷ کلا چیز خوبی نیست! تو هر پارامتر زده خراب کاری کرده (O)
    می خواستم بپرسم جایگزینی واسه این افزونه می شناسید؟ یادمه اون موقع ها که تو wp.com بودم یه دکمه تو ویرایشگر نوشته داشت که امکان می داد یه فرم ساده به برگه یا نوشته اضافه کنیم؛ یه چیزی تو این مایه ها ;-)
    Fast Secure Contact Form جالب نیست من فقط یه فرم تماس ساده میخوام….
    ممنون می شم راهنمایی کنید (F)

    • البته خراب‌کاری اصلی این افزونه همون لود شدن استایل و اسکریپتش تو همه صفحاته که با این آموزش حل میشه اما منم چندتا افزونه تا حالا تست کردم اما یا کامل نبود یا اینکه بیش از حد حرفه‌ای بودن. پلاگینهایی که تو مخرن وردپرس هست رو تست کنین شاید یکیشون مناسبتون بود منم اگه چیز ساده‌ای گیرم بیاد حتما میذارم که دوستانم استفاده کنن. در ضمن یه لینک از تست gtmetrix بهم بدین چک کنم.

      • یاسر :

        ممنون از اینکه وقت می زارید و جواب می دین
        باید وارد مخزن بشیم :-D
        منم می گردم اگه به نتیجه رسیدم خبرتون می کنم
        اینم لینک آخرین بررسی http://gtmetrix.com/reports/tickblog.ir/PO61kgBX
        چند تا افزونه خرابکاری کردن که یکیشون فرم تماسه
        باز هم ممنون (F)

      • یاسر :

        بعد از جاسازی این کدها تو پوسته واقعا ترمز این فرم تماس کشیده شد.
        اما تو مخزن که می گشتم افزونه Grunion Contact Form رو پیدا کردم که نویسندش خوده اتوماتیکه .ازش خوشم اومد خواستم نظر شمارو راجع بهش بدونم
        البته اگه وقت داشته باشید
        ممنون (F)

  2. پونه :

    سلام تشکر می کنم اگه ممکنه افزونه تماس با ما اصلاح شده .همینکه می فرمایین ترمزش را بکشید را برای دانلود بزارید چون همه ما کد نویس که نیستیم . تشکر می کنم

    • سلام دوست عزیز. تغییری در فایلهای افزونه بوجود نمیاد و فقط با گذاشتن این کدها مکان لود شدن استایل و اسکریپت مخصوص فرم تماس کنترل میشه. اگر موفق به انجامش نشدین میتونین با ایمیل در تماس باشین براتون کدها رو تنظیم کنم.

  3. سلام.

    واقعا جالب بود خیلی خوب بود.استفاده کردیم. (L)

    فقط یه سوال فنی ! :o)

    من میخوام افزونه ی jQuery lazy load plugin رو به جز صفحه ی اصلی در بقیه ی صفحات به صورت فعال داشته باشم.

    باید چطوری این کار رو بکنم ؟

    منتظر جوابت هستم دوست عزیز. (F)

    • سلام دوست عزیز. از این آموزش استفاده کنین.

      • محسن جان این سایت که باز نمیشه ! میشه همینجا توی یه مطلب آموزش بدین ؟ خیلی ممنون میشم. (F)

      • این آموزش شما رو بالاخره تونستم بخونم ولی روی این آموزش اصلا چیزی که من میخوام نیست.ببینید من میخوام فقط اسکریپت افزونه رو توی صفحه ی نخست خودم غیر فعال داشته باشم و توی بقیه ی صفحات افزونه فعال باشه.امیدوارم متوجه منظورم شده باشید.

        • دقیقا دوست عزیز میفهمم. من این کار رو تو وبلاگ خودمم انجام دادم و این کدش هست که براش شرط تعیین شده:

          function my_deregister_javascript() {
          	if (is_front_page() || is_archive() || is_page()) {
          	wp_deregister_script( 'lightbox' );
          	wp_deregister_script( 'stt-common' );
          	wp_deregister_script( 'jquery' );
          }
          }
          • ممنون محسن جان.حالا میشه بگی کاری که گفتم رو با افزونه ی jQuery lazy load plugin چطوری انجامش بدم ؟ یه کد برام لطف کنی بسازی بدی منم بذارم ؟ (F)

  4. mohammad :

    سلام این کدهایی که بالا نوشتی در یک قالب خاصی هستند مثل ورد پد و اینا این قالب رو تو ورد پرس چطور میشه درست کرد؟ ممنون میشم روشش رو یاد بدبد.

  5. راهی هست که همین کار رو برای این افزونه‌ها انجام داد؟
    NextGen-Gallery
    wp-e-Commerce
    SimpleModal-Login

  6. واسه من هنوز مشکل داره . هیچی نشون نمیده در صفحه تماس با ما بجز کد :((
    کمک . تمام کار هایی که گفته بودی هم انجام شد ولی نشد

  7. سلام
    آقا من قبلا این Google Syntax Highlighter رو هم نصب کرده بودم اما با تنظیم و استفادش مشکل دارم. توضیحات خودش در مورد ویرایش قالب و …
    دقیقا باید چیکار کنم؟ بعد از نصب ، کدها رو بین چه تگ هایی قرار بدم؟
    ممنون از مطالب خوبی

    • سلام. تو بخش تنظیمات افزونه قسمت Shortcode Parameters توضیحات خوبی داده مثلا برای قرار دادن کد php خط ۲ رو ملاحضه بفرمائین.

  8. سلام
    محسن جان عالی بود البته نه برای من چون فرمو خودم می نویسم چون کاری نداره.
    من یک سوال ازت داشتم
    چطوری می تونم به فرم نظر وردپرس مانند تو امکان درج شکلک را بدم.
    ایا افزونه ای هست یا این که باید خودمان برنامه اش را بنویسیم اگر لطفا کنی و توضیح بدی ممنون می شم.
    موفق باشی

    • سلام دوست عزیز. این افزونه‌ها رو باید نصب کنین:
      Smilies Themer و Smilies Themer Toolbar

      • سلام
        ممنونم از جوابتون.
        اگه می شه یک سوال دیگه هم داشتم :
        این کدها خیل جال نمایش داده می شن این ها چی افزونه هستن یا برنامه نویسی باید کرد؟
        این از سوال قبلی بسیار مهم تره برای من .
        منتظر جواب هستم.

        موق باشی

        • از این افزونه استفاده کنین: SyntaxHighlighter Evolved

          • بازم سلام
            می گم برعکس تایتل سایتت تو اصلانم تازه وارد نیستی.
            راستی اگه تونستی برای کامنت هات خاصیت کوکی را بگذار تا این همه وقت صرف پرکردن نام نکنیم.
            اگه مایل باشی من می خوام تبادل لینک کنیم البته اگر بخوای .

            موفق باشی

          • سلام
            شرمنده بازم سوال دار م:
            من هر کار کردم این افزونه کدها اجرا نشد .طبق گفته خود نویسنده افزونه بین تگ

             code 

            ولی کار نمی کند.
            لطفا بازم راهنمایی کنید.
            موفق باشید

            • طبیعتا باید همینجور که اینجا گذاشتین بزارین و کار کنه. برای اینکه مطمئن بشین بقیه افزونه‌ها رو غیرفعال کنین ببینین جواب میده یا نه.

  9. بسیار عالی و جینگول پسند….

  10. آموزش خوبی است اما به نظر من استفاده از پلاگین Fast Secure Contact Form قابلیت های بالایی نسب به Contact Form 7 دارد.

    موفق باشید.

  11. ممنون دوست عزیز
    خیلی خوب بود

  12. ممنون خیلی خوب بود

  13. جالب بود… و کاربردی…

  14. سلام دوست عزیز
    من این افزونه رو دارم
    مشکلی که هست اینه که هر فایلی بهش الصاق میشه رو برای من ایمیل نمیکنه
    با اینکه پیغام میده “پیغام شما با موفقیت ارسال شد. متشکریم.”
    خیلی دنبال راه حل گشته ام اما بی فایده بوده
    ممنون اگه کمکم کنین
    اینم آدرس فرم
    http://kafran.ir/%D8%A7%D8%B1%D8%B3%D8%A7%D9%84-%D9%85%D8%B7%D9%84%D8%A8/

  15. واقعا عالی بود …

  16. بسیار عالی بود…
    دراولین فرصت تصحیح می کنم
    ;-)

  17. ممنون خیلی عالی بود (H)

  18. ممنون.
    حتما” عمل میکنم.





:o) :-D ;-) :-P (H) :-S ;-( :-O :-( (O) (N) (Y) (L) (U) (F) (W) (^) (T)
یاهو  فیس‌بوک  گوگل  فرندفید  مشترک فید وبلاگ بشین  توییتر