افزایش سرعت سایت سطح پیشرفته

افزایش سرعت سایت وردپرس سطح پیشرفته

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

اکیدا تاکیید دارم افزونه wp-rocket (در مقاله اول همراه با تنظیمات آماده) همراه با افزونه Async (مورد آخر این مقاله) فعال کنید و تاثیر عالی آن را بر سرعت سایت خود مشاهده کنید.

تذکر مهم

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

1-ایموجی ها را غیرفعال کنید

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

/**
* Disable the emoji's
**/
function disable_emojis() {
remove_action( 'wp_head', 'print_emoji_detection_script', 7 );
remove_action( 'admin_print_scripts', 'print_emoji_detection_script' );
remove_action( 'wp_print_styles', 'print_emoji_styles' );
remove_action( 'admin_print_styles', 'print_emoji_styles' );
remove_filter( 'the_content_feed', 'wp_staticize_emoji' );
remove_filter( 'comment_text_rss', 'wp_staticize_emoji' );
remove_filter( 'wp_mail', 'wp_staticize_emoji_for_email' );
add_filter( 'tiny_mce_plugins', 'disable_emojis_tinymce' );
}
add_action( 'init', 'disable_emojis' );
/**
* Filter function used to remove the tinymce emoji plugin.
* @param    array  $plugins
* @return   array  Difference between the two arrays
*/
function disable_emojis_tinymce( $plugins ) {
  if ( is_array( $plugins ) ) {
    return array_diff( $plugins, array( 'wpemoji' ) );
  } else {
    return array();
  }
}

کد بالا را داخل فایل functions.php خود قرار دهید تا ایموجی ها غیرفعال شود.

2-غیرفعال کردن Embed در وردپرس

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

function my_deregister_scripts () {
  wp_dequeue_script( 'wp-embed' );
}
add_action( 'wp_footer', 'my_deregister_scripts' );
کد بالا را کپی کرده و در فایل functions.php خود قرار دهید تا جاسازی ها در وب سایت شما غیرفعال شود.

اگر در ویرایش کد وب سایت خود احساس راحتی نمی کنید، می توانید از افزونه wp-Rocket برای انجام این کار برای شما استفاده کنید.

غیرفعال کردن Embed در وردپرس برای افزایش سرعت سایت

3-حذف Query Strings

بسیاری از فایل های CSS و JS در وردپرس با پرس و جوی شبیه به این scripts.js?ver=2.7.9 اضافه می شوند.

“?ver=2.7.9” رشته پرس و جو است که نشان دهنده یک نسخه فایل خاص است که باید بارگذاری شود.

مشکل رشته های پرس و جو این است که اکثر سرورها فایل ها را با رشته های کوئری کش نمی کنند. این بدان معناست که با هر درخواست، تمام فایل‌های دارای رشته کوئری باید از سرور دانلود شوند. این امر پهنای باند و منابع سیستم زیادی را هدر می دهد که به نوبه خود زمان بارگذاری را افزایش می دهد.

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

function _remove_script_version ( $src ){
  $parts = explode( '?', $src );
  return $parts[0];
}
add_filter( 'script_loader_src', '_remove_script_version', 15, 1 );
add_filter( 'style_loader_src', '_remove_script_version', 15, 1 );
کد بالا را در فایل functions.php تم خود اضافه کنید تا رشته های پرس و جو حذف شود.

پیشنهاد مطالعه:بازاریابی محتوا

4-XML-RPC را غیرفعال کنید.

XML-RPC پروتکلی است که برای استانداردسازی ارتباطات بین برنامه های مختلف استفاده می شود. زمانی استفاده می شود که از برنامه رسمی موبایل وردپرس، مشتری وردپرس یا هر برنامه دیگری که به وردپرس متصل می شود استفاده می کنید.

اگر از هیچ یک از این ویژگی‌ها استفاده نمی‌کنید، می‌توانید با خیال راحت آنها را غیرفعال کنید تا افزایش سرعت سایت را مشاهده کنید.

add_filter( 'xmlrpc_enabled', '__return_false' );
کد بالا را به فایل functions.php تم خود اضافه کنید تا XML-RPC را غیرفعال کنید.

 

غیرفعال کردن PINGbacks

پینگ‌بک‌ها نوعی کامنت وردپرس هستند که هنگام پیوند به هر وبلاگ وردپرس دیگری ایجاد می‌شوند. اگر این ویژگی فعال باشد، هر زمان که وبلاگ دیگری به وبلاگ شما پیوند داده شود، اعلان‌های Pingback را نیز دریافت خواهید کرد.

پینگ بک در روزهای اولیه وردپرس استفاده می شد و اکنون به ندرت مورد استفاده قرار می گیرد. می توانید با خیال راحت ویژگی Pingbacks را برای بهبود زمان بارگذاری خود غیرفعال کنید.

برای غیرفعال کردن Pingbacks در وردپرس، به تنظیمات > گفتگو در داخل ادمین وردپرس خود بروید و تیک تنظیمات زیر را بردارید.

غیرفعال کردن Pingbacks در وردپرس برای افزایش سرعت سایت

مسدود کردن دسترسی به XMLRPC.PHP

روشی که ما در بالا استفاده کردیم XML-RPC را غیرفعال می کند، اما فایل xmlrpc.php همچنان قابل دسترسی است. برای جلوگیری از بدترین حالت هک، بهتر است دسترسی به فایل را غیرفعال کنید.

<Files xmlrpc.php>
  <IfModule mod_authz_core.c>
    Require all denied
  </IfModule>
  <IfModule !mod_authz_core.c>
    Order allow,deny
    Deny from all
  </IfModule>
</Files>
کد بالا را به فایل .htaccess خود اضافه کنید تا دسترسی به xmlrpc.php را غیرفعال کنید.

5-پیوندهای RSD را حذف کنید.

RSD یک سرویس کشف است که به کشف Pingback و XML-RPC در وبلاگ های وردپرس کمک می کند. اگر XML-RPC و Pingbacks را غیرفعال کرده اید، می توانید با خیال راحت RSD را نیز غیرفعال کنید.

remove_action( 'wp_head', 'rsd_link' ) ;


کد بالا را در فایل functions.php تم خود قرار دهید تا پیوندهای RSD غیرفعال شود.

 

پیشنهاد مطالعه:ایده های درآمد زا طراحی سایت در مجله پیشگامان

6-jQuery Migrate را حذف کنید

jQuery Migrate فایل های جاوا اسکریپت (jquery-migrate.js و jquery-migrate.min.js) هستند که در هر صفحه وب سایت شما وجود دارند. آنها برای پشتیبانی از تم هایی که از نسخه های قدیمی jQuery استفاده می کنند گنجانده شده اند.

اگر 10000 بازدید کننده از وب سایت خود دارید، فایل های jQuery Migrate باید 10000 بار توسط سرور شما ارائه شوند. این نه تنها پهنای باند را هدر می دهد، بلکه زمان بارگذاری شما را نیز افزایش می دهد. اگر از یک تم مدرن استفاده می کنید، می توانید با خیال راحت jQuery Migrate را برای  افزایش سرعت سایت غیرفعال کنید.

برای غیرفعال کردن jQuery Migrate، می توانید افزونه Remove jQuery Migrate را نصب کنید. این افزونه بسیار کوچک است و نصب آن هیچ باری روی سرور شما وارد نمی کند.

7-مخفی کردن نسخه وردپرس

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

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

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

// remove version from head
remove_action('wp_head', 'wp_generator');

// remove version from rss
add_filter('the_generator', '__return_empty_string');

// remove version from scripts and styles
function shapeSpace_remove_version_scripts_styles ($src) {
  if (strpos($src, 'ver=')) {
    $src = remove_query_arg('ver', $src);
  }
  return $src;
}
add_filter('style_loader_src', 'shapeSpace_remove_version_scripts_styles', 9999);
add_filter('script_loader_src', 'shapeSpace_remove_version_scripts_styles', 9999);
کد بالا را در قالب functions.php خود وارد کنید تا نسخه وردپرس را در وب سایت خود مخفی کنید.

8-پیوند wlwmanifest را حذف کنید.

تگ wlwmanifest متا تگ دیگری است که در هر وب سایت وردپرسی نمایش داده می شود.

این برچسب توسط Windows Live Writer استفاده می‌شود، که یک برنامه تقریبا منسوخ است که برای انتشار مستقیم در وردپرس استفاده می‌شود. شما می توانید این کد را حذف کنید تا زمان بارگذاری خود را به طور جزئی بهبود بخشید.

remove_action('wp_head', 'wlwmanifest_link');
کد بالا را به فایل functions.php تم خود اضافه کنید تا تگ wlwmanifest حذف شود.

9-برچسب پیوند RSD را حذف کنید.

در بهینه سازی شماره 5، ما سرویس RSD را غیرفعال کردیم، اما متا تگ آن همچنان در هر صفحه وب سایت شما نشان داده می شود.

از آنجایی که سرویس RSD غیرفعال است، می توانید با خیال راحت این برچسب را از هدر وب سایت خود حذف کنید.

<?php remove_action('wp_head', 'rsd_link'); ?>
کد بالا را به functions.php تم خود اضافه کنید تا تگ پیوند RSD حذف شود.

 

10-برچسب Shortlink را حذف کنید.

تگ shortlink همچنین در هر صفحه در وب سایت شما وجود دارد که حاوی پیوند پست با شناسه صفحه است.

اگر به هر حال از URL های کوتاه و دقیق استفاده می کنید، این برچسب غیر ضروری است و باید حذف شود.

add_filter('after_setup_theme', 'remove_redundant_shortlink');
function remove_redundant_shortlink() {
  // remove HTML meta tag
  // <link rel='shortlink' rel="noopener" href='http://example.com/?p=25' />
  remove_action('wp_head', 'wp_shortlink_wp_head', 10);

  // remove HTTP header
  // Link: <https://example.com/?p=25>; rel=shortlink
  remove_action( 'template_redirect', 'wp_shortlink_header', 11);
}
کد بالا را به functions.php تم خود اضافه کنید تا تگ shortlink حذف شود.

11-فیدهای RSS را غیرفعال کنید.

RSS یا خلاصه سایت غنی روشی است که در آن محتوای وبلاگ شما در قالبی قابل خواندن توسط ماشین به اشتراک گذاشته می شود. در درجه اول توسط برنامه های جمع آوری کننده برای جمع آوری و نمایش محتوا از بسیاری از وب سایت ها (مانند Feedly) استفاده می شود.

اگر هیچ کاربری ندارید که از فید RSS شما برای مصرف محتوای شما استفاده کند، می توانید عملکرد RSS را به طور کلی غیرفعال کنید. غیرفعال کردن rss به  افزایش سرعت سایت کمک میکند.

function itsme_disable_feed() {
  wp_die( __( 'No feed available, please visit the <a rel="noopener" href="'. esc_url( home_url( '/' ) ) .'">homepage</a>!' ) );
}

add_action('do_feed', 'itsme_disable_feed', 1);
add_action('do_feed_rdf', 'itsme_disable_feed', 1);
add_action('do_feed_rss', 'itsme_disable_feed', 1);
add_action('do_feed_rss2', 'itsme_disable_feed', 1);
add_action('do_feed_atom', 'itsme_disable_feed', 1);
add_action('do_feed_rss2_comments', 'itsme_disable_feed', 1);
add_action('do_feed_atom_comments', 'itsme_disable_feed', 1);
کد بالا را به functions.php تم خود اضافه کنید.

وردپرس همچنین پیوندهایی را به فید RSS شما در سربرگ صفحه تعبیه می کند. اگر فید RSS را غیرفعال کرده اید، باید با استفاده از کد زیر آن را نیز غیرفعال کنید.

remove_action( 'wp_head', 'feed_links_extra', 3 );
remove_action( 'wp_head', 'feed_links', 2 );
کد بالا را در functions.php قالب خود قرار دهید تا پیوندهای RSS در قسمت head ظاهر نشوند.

12-Pingback های خود را غیرفعال کنید.

Pingback های خود زمانی ایجاد می شوند که به یکی از پست های خود در وب سایت خود پیوند دهید. آنها هیچ ارزشی ندارند و باید غیرفعال شوند.

function no_self_ping( &$links ) {

$home = get_option( 'home' );

foreach ( $links as $l => $link )

  if ( 0 === strpos( $link, $home ) )
  
    unset($links[$l]);
}

add_action( 'pre_ping', 'no_self_ping' );
کد بالا را به functions.php قالب اصلی خود اضافه کنید تا Self Pingbacks غیرفعال شود.

13-پیوندهای REST API را حذف کنید.

REST API به وردپرس اجازه می دهد با سایر برنامه ها ارتباط برقرار کند و به توسعه دهندگان اجازه می دهد راه حل های خلاقانه ایجاد کنند. با این حال، اکثر وب سایت ها از این ویژگی استفاده نمی کنند و می توان آن را غیرفعال کرد.

هر صفحه در وب سایت شما حاوی یک لینک در هدر است که باید غیرفعال شود.

<link rel='https://api.w.org/' rel="noopener" href='https://domain.com/wp-json/' />
برای رفع آن از کد زیر استفاده کنید.
add_action('after_setup_theme', function(){
    remove_action( 'wp_head', 'rest_output_link_wp_head', 10 );
});
کد بالا را به فایل functions.php قالب خود اضافه کنید تا پیوندهای REST API حذف شود.

14-Dashicon ها را غیرفعال کنید

بسیاری از قالب های وردپرس در حال حاضر با فونت های مبتنی بر آیکون همراه هستند. یکی از رایج ترین آنها کتابخانه آیکون Dashicons است.

dashicons.min.css فایلی است که شامل سبک های نماد است و اندازه آن حدود 30 کیلوبایت است. وقتی آن را در تعداد بازدیدکنندگان ضرب می کنید، می توانید بفهمید که این تک فایل چقدر پهنای باند و بار سرور را ایجاد می کند.

اگر از Dashicons استفاده نمی کنید، باید آن را حذف کنید. با این حال، شما نمی توانید فایل را از نصب وردپرس خود حذف کنید. اگر تم شما به گونه ای کدگذاری شده است که به Dashicon ها نیاز دارد، می تواند طرح بندی وب سایت شما را خراب کند.

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

// remove dashicons
function wpdocs_dequeue_dashicon() {

if (current_user_can( 'update_core' )) {
  return;
}

wp_deregister_style('dashicons');
}
add_action( 'wp_enqueue_scripts', 'wpdocs_dequeue_dashicon' );
کد بالا را در فایل functions.php تم خود قرار دهید تا Dashicons غیرفعال شود.

لطفا توجه داشته باشید که کد بالا به گونه ای ایجاد شده است که Dashicons برای مدیران سایت غیرفعال نیست. این به این دلیل است که اگر Dashicons برای همه کاربران غیرفعال باشد، گاهی اوقات نوار مدیریتی که در قسمت جلویی وب سایت ظاهر می شود را می شکند.

15-Google Maps را غیرفعال کنید.

بسیاری از قالب ها و افزونه ها Google Maps API را با خود همراه می کنند، که می تواند تلاش های بهینه سازی عملکرد شما را از بین ببرد. در حالی که Google Maps API به صورت ناهمگام بارگیری می شود، زمان بارگذاری کل صفحه را با حاشیه زیادی افزایش می دهد.

add_filter( 'avf_load_google_map_api', '__return_false' );
کد بالا را به فایل functions.php تم خود اضافه کنید.

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

16-فرم تماس 7،  JS/CSS را غیرفعال کنید.

فرم تماس 7 یکی از محبوب ترین افزونه های فرم تماس موجود برای وردپرس است. اگر از فرم تماس ۷ استفاده می‌کنید، باید بدانید که فایل‌های CSS و JS آن‌ها با هر صفحه از وب‌سایت شما بارگذاری می‌شوند، خواه شامل فرم باشد یا نباشد. این یک اتلاف غیر ضروری منابع است که باید از آن اجتناب کنید.

برای غیرفعال کردن بارگذاری فایل ها در هر بارگذاری صفحه، از این کد استفاده کنید.

add_filter( 'wpcf7_load_js', '__return_false' );
add_filter( 'wpcf7_load_css', '__return_false' );
کد بالا را به فایل functions.php تم خود اضافه کنید.
10 افزونه ضروری وردپرس برای تقویت وب سایت شما

17-غیرفعال کردن Heartbeat

وردپرس از یک Heartbeat API برای ایجاد و حفظ ارتباط بین مرورگر و سرور استفاده می کند. وقتی وردپرس به طور خودکار پست های شما را در پس زمینه ذخیره می کند، این را تجربه کرده اید.

در ظاهر، Heartbeat API یک ویژگی مفید است. اما، از نقطه نظر عملکرد، این یک معامله خوب نیست زیرا وردپرس هر 15 ثانیه یک تماس AJAX با سرور برقرار می کند، که سپس باعث می شود مقداری کد روی سرور اجرا شود. همانطور که می دانید، استفاده عاقلانه از منابع CPU نیست.

می‌توانید برای کاهش استفاده از CPU و هاست ، Heartbeat API را غیرفعال کنید.

add_action( 'init', 'stop_heartbeat', 1 );

function stop_heartbeat() {

wp_deregister_script('heartbeat');

}
کد بالا را در فایل functions.php تم خود قرار دهید تا Heartbeat API غیرفعال شود.

قبل از غیرفعال کردن API یک هشدار Heartbeat API همچنین برای برخی از عملکردهای ضروری مانند قفل کردن پست هنگام ویرایش آن توسط ادمین استفاده می شود و غیرفعال کردن API باعث غیرفعال کردن آن نیز می شود.

اگر چندین نویسنده در وب‌سایت خود دارید یا پس از غیرفعال کردن Heartbeat با مشکلاتی مواجه شدید، کدی را که اضافه کرده‌اید حذف کنید .

18-ابزارک های ووکامرس را غیرفعال کنید.

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

add_action( 'widgets_init', 'remove_woo_widgets' );

function remove_woo_widgets() {
  unregister_widget( 'WC_Widget_Recent_Products' );
  unregister_widget( 'WC_Widget_Featured_Products' );
  unregister_widget( 'WC_Widget_Product_Categories' );
  unregister_widget( 'WC_Widget_Product_Tag_Cloud' );
  unregister_widget( 'WC_Widget_Cart' );
  unregister_widget( 'WC_Widget_Layered_Nav' );
  unregister_widget( 'WC_Widget_Layered_Nav_Filters' );
  unregister_widget( 'WC_Widget_Price_Filter' );
  unregister_widget( 'WC_Widget_Product_Search' );
  unregister_widget( 'WC_Widget_Top_Rated_Products' );
  unregister_widget( 'WC_Widget_Recent_Reviews' );
  unregister_widget( 'WC_Widget_Recently_Viewed' );
  unregister_widget( 'WC_Widget_Best_Sellers' );
  unregister_widget( 'WC_Widget_Onsale' );
  unregister_widget( 'WC_Widget_Random_Products' );
}
از این کد در فایل functions.php قالب خود استفاده کنید تا ابزارک های پیش فرض WooCommerce را غیرفعال کنید.

19-از افزونه ASYNC JAVASCRIPT استفاده کنید.

استفاده از این افزونه در کنار پلاگین wp-rocket معجزه میکند!

 

افزونه Async Javascript یک انتخاب فوق العاده برای بهینه سازی فایل های جاوا اسکریپت مسدود کننده رندر است.

در اینجا یک آموزش کوتاه در مورد نحوه پیکربندی افزونه ارائه شده است.

افزونه را از منوی افزونه ها نصب و فعال کنید. تنظیمات افزونه را با رفتن به Settings > Async JavasSript باز کنید.

 

تنظیمات سریع

افزونه ASYNC JAVASCRIPT برای افزایش سرعت سایت

در صورت بروز مشکل گزینه Async را به Defer تغییر دهید.

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

پیشگامان-کسب و کارت رو آنلاین کن 

 

دیدگاهتان را بنویسید

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