رفتن به مطلب

برطرف کردن اخطارهای Defer parsing of JavaScript در جی تی متریکس


yasweb

پست های پیشنهاد شده

سلام دوستان.
بنده روی سرعت سایتم خیلی کار کردم و طبق استانداردهای جی تی متریکس و گوگل دولپور، سعی کردم تا تعداد Requests ، Total Page Size و  Fully Loaded Time رو کاهش بدم. و تا حدود زیادی هم در این امر موفق بودم.
اما مشکلی که نمیدونم چطور باید حلش کنم اینه که در قسمت Defer parsing of JavaScript با سه پیام خطا مواجه شدم! (طبق تصویری که مشاهده میکنید) و به احتمال زیاد همین سه مورد روی Fully Loaded Time تاثیر گذاشته.

 

2020-07-22_174840.thumb.png.2f1ee4f7e410a2522ee7b6c8871e1b77.png

 

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

لینک به ارسال

سلام کد زیر رو به functions.php اضافه کنید

function defer_parsing_of_js ( $url ) {
  if ( FALSE === strpos( $url, '.js' ) ) return $url;
  if ( strpos( $url, 'jquery.js' ) ) return $url;
  return "$url' defer ";
}
add_filter( 'clean_url', 'defer_parsing_of_js', 11, 1 );

 

 

لینک به ارسال

سپاس دوست عزیز.

کدی که ارسال کردید رو به فانکشن اضافه کردم، اما همچنان اون مشکل پا برجاست!

البته از پلاگین Autoptimize برای بهینه سازی کد Javascript و Css استفاده میکنم.

لینک به ارسال
در 1 ساعت قبل، yasweb گفته است :

سپاس دوست عزیز.

کدی که ارسال کردید رو به فانکشن اضافه کردم، اما همچنان اون مشکل پا برجاست!

البته از پلاگین Autoptimize برای بهینه سازی کد Javascript و Css استفاده میکنم.

میتونید از این افزونه ها استفاده کنید

https://wordpress.org/plugins/async-javascript/
https://wordpress.org/plugins/litespeed-cache/
https://wordpress.org/plugins/autoptimize/
https://wordpress.org/plugins/speed-booster-pack/
https://wordpress.org/plugins/wp-deferred-javascripts/

 

لینک به ارسال
در 9 ساعت قبل، yasweb گفته است :

دوست عزیز.

عرض کردم ، از این افزونه استفاده میکنم در حال حاضر.


https://wordpress.org/plugins/autoptimize/

سلام، تاجایی که می‌دونم و توی سایت خودم چک کردم، اگر قالبتون استاندارد باشه، اتواوپتیمایز خودش جاوا اسکریپت رو میاره توی فوتر، توی تنظیماتش قسمت Javascript چک کنید که گزینه‌ی "بارگذاری Javascript در تگ <head>؟" رو فعال نکرده باشید.

لینک به ارسال
  • 2 هفته بعد...
در در ۱۳۹۹/۵/۲ در 09:08، فرشاد گوهری گفته است :

سلام، تاجایی که می‌دونم و توی سایت خودم چک کردم، اگر قالبتون استاندارد باشه، اتواوپتیمایز خودش جاوا اسکریپت رو میاره توی فوتر، توی تنظیماتش قسمت Javascript چک کنید که گزینه‌ی "بارگذاری Javascript در تگ <head>؟" رو فعال نکرده باشید.

سلام دوست عزیز.

تیک "بارگذاری Javascript در تگ <head> فعال نیست!

 

لینک به ارسال
در 10 ساعت قبل، yasweb گفته است :

سلام دوست عزیز.

تیک "بارگذاری Javascript در تگ <head> فعال نیست!

پس ممکنه نحوه‌ی آدرس‌دهی اسکریپت‌ها در قالبتون طبق استانداردهای وردپرس نبوده که این پلاگین حلش نکرده، برای تست یکی دیگه از پلاگین‌هایی که @asadiy4n معرفی کردن رو امتحان کنید ببینید اون‌ها مشکل رو حل نمی‌کنه؟ مثلا پلاگین اولی و آخری دقیقا برای همین کار ساخته شدن و شاید جواب بده.

لینک به ارسال
در در ۱۳۹۹/۵/۱ در 19:46، asadiy4n گفته است :

سلام کد زیر رو به functions.php اضافه کنید


function defer_parsing_of_js ( $url ) {
  if ( FALSE === strpos( $url, '.js' ) ) return $url;
  if ( strpos( $url, 'jquery.js' ) ) return $url;
  return "$url' defer ";
}
add_filter( 'clean_url', 'defer_parsing_of_js', 11, 1 );

 

 

فیلتر clean_url خیلی وقته که از رده خارج شده:

https://developer.wordpress.org/reference/functions/clean_url/

 

در در ۱۳۹۹/۵/۱۳ در 02:28، yasweb گفته است :

سلام دوست عزیز.

تیک "بارگذاری Javascript در تگ <head> فعال نیست!

 

این کد رو استفاده کنید:
 

add_filter( 'script_loader_tag', 'ywp_defer_parsing_of_js', PHP_INT_MAX );
function ywp_defer_parsing_of_js( $url ) {
    if ( is_user_logged_in() ) {
        return $url;
    }

    if ( FALSE === strpos( $url, '.js' ) ) {
        return $url;
    }

    if ( strpos( $url, 'jquery.js' ) ) {
        return $url;
    }

    return str_replace( ' src', ' defer src', $url );
}

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

لینک به ارسال

به گفتگو بپیوندید

هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .

مهمان
ارسال پاسخ به این موضوع ...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  تنها استفاده از 75 اموجی مجاز می باشد.

×   لینک شما به صورت اتوماتیک جای گذاری شد.   نمایش به صورت لینک

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.

×
×
  • اضافه کردن...