برگه تماس را میتوان به عنوان یکی از مهمترین و اصلیترین برگههای یک سایت یا وبلاگ معرفی کرد چرا که حتی با وجود مطالب پرمحتوا، در صورت عدم وجود داشتن برگه تماس برای برقراری ارتباط بین کاربران با شما ساختار سایت یا وبلاگ شما از نظر طراحی و سئو دچار مشکل است.
در سیستم مدیریت محتوای وردپرس نیز روشهای گوناگونی برای ایجاد برگه تماس وجود دارد که یکی از معمولترینِ این روشها استفاده از افزونههای تماس وردپرس میباشد که بیشک و بدون تردید قدرتمندترین و کاربر پسندترین این افزونهها، افزونهی Contact Form 7 است که بیشترین تعداد دانلود در مخزن وردپرس را در بین افزونههای تماس به خود اختصاص داده است که شما به کمک این افزونه میتوانید صفحات تماس و فرمهای تماس با قابلیتهای فراوان را آماده کنید.
بهینه سازی افزونه فرم تماس Contact Form 7
همانطور که میدانید این افزونه نیز همانند سایر افزونههای تماس وردپرس برای نمایش و عملکرد صحیح نیاز به فراخوانی فایلهای جاوا اسکریپت و استایل دارد که این فایلها به حجم خروجی تمام برگههای سایت شما اضافه خواهد شد که به دلیل دریافت کردن این فایلها توسط مرورگر، زمان بیشتری برای بارگزاری کامل سایت نیاز است که این امر موجب حجیمتر شدن خروجی صفحات و بیشتر شدن زمان بارگذاری خواهد شد.
در این نوشته از وبلاگ ماندگار وب آموزشی را برای دوستانی که از این افزونه تماس استفاده میکنند آماده نمودهایم که به کمک این آموزش میتوانید فایلهای جاوا اسکریپت و استایل مورد نیاز این افزونه را تنها در صفحاتی که برای ساخت فرم از این افزونه استفاده شده است فراخوانی کنید و در نهایت علاوه بر کم کردن حجم خروجی به سرعت بارگذاری سایت خود نیز کمک کنید. بهینه سازی افزونه Contact Form 7 به دو روش امکانپذیر میباشد که در این نوشته هر دو روش را برای شما دوستان عزیز شرح خواهیم داد و شما میتوانید یکی از این روشها را برای بهینه کردن افزونه تماس وردپرسانتخاب کنید.
در روش اول که پیشنهاد نویسنده افزونه Contact Form 7 میباشد در روت هاست وردپرس و مسیری که وردپرس را در آنجا نصب نمودهاید فایل wp-config.php را برای ویرایش باز میکنید (خواهشمندیم از تمامی فایلهایی که در این نوشته برای ویرایش معرفی میشوند نسخه پشتیبان تهیه نمایید) و دستور زیر را در محل مناسبی از این فایل قرار میدهید:
define('WPCF7_LOAD_JS', false);
define('WPCF7_LOAD_CSS', false);
چنانچه آشنایی کافی با ویرایش فایلها ندارید میتوانید دستور را بعد از خط زیر قرار داده و پس از تغییرات فایل را ذخیره کنید:
define('WP_DEBUG', false);
دستور بالا مانع فراخوان شدن فایلهای استایل و جاوا اسکریپت افزونه Contact Form 7 میشود که در قدم دوم شما باید فایل page.php پوسته وردپرس خود را برای ویرایش باز کنید و دستور شرطی زیر را به ابتدای این فایل اضافه کرده و تغییرات را ذخیره کنید:
<?php
if ( function_exists( 'wpcf7_enqueue_scripts' ) ) {
wpcf7_enqueue_scripts();
wpcf7_enqueue_styles();
}
?>
با اضافه شدن دستور فوق، فایلهای جاوا اسکریپت و استایل افزونه Contact Form 7 تنها در برگههای سایت شما به نمایش در خواهند آمد.
در روش دوم که پیشنهاد گروه ماندگار وب میباشد نیازی به ویرایش فایلهای اصلی هسته وردپرس نبوده و برخلاف روش اول فایلهای جاوا اسکریپت و استایل تنها و تنها در صفحاتی که از افزونه تماس در آنها استفاده شده است فراخوان خواهند شد که برای استفاده از این روش تنها کافیست فایل فانکشن قالب وردپرس خود را برای ویرایش باز کرده و دستور زیر را در محل مناسبی از این فایل قرار دهید:
add_action( 'wp_print_scripts', 'deregister_cf7_javascript', 100 );
function deregister_cf7_javascript() {
if ( !is_page(array(8,10)) ) {
wp_deregister_script( 'contact-form-7' );
}
}
add_action( 'wp_print_styles', 'deregister_cf7_styles', 100 );
function deregister_cf7_styles() {
if ( !is_page(array(8,10)) ) {
wp_deregister_style( 'contact-form-7' );
}
}
در دستور فوق برای نمونه برگههایی با آیدی 8 و 10 در کد قرار داده شدهاند که بدین ترتیب فایلهای جاوا اسکریپت و استایل افزونه Contact Form 7 تنها در این برگهها فراخوان خواهد شد که شما برای عملکرد صحیح کد میبایست آیدی برگههای خود را که از افزونه تماس در آنها استفاده شده است جایگزین آیدی پیشفرض کد کنید که پس از ذخیرهی تغییرات متوجه خواهید شد فایلهای خروجی این افزونه تنها در برگههایی که شما آیدی آنها را مشخص کرده اید فراخوان خواهند شد.