Προς το περιεχόμενο

Defer loading javascript - Wordpress


Προτεινόμενες αναρτήσεις

Δημοσ.

Καλησπέρα παιδιά,

 

θέλω να ρωτήσω αν έχει καταφέρει κανείς επιτυχημένα να φορτώσει ασύγχρονα τα διάφορα js που φορτώνουν σε wordpress themes ή στα plugins.

 

https://varvy.com/pagespeed/defer-loading-javascript.html

 

π.χ υπάρχει ένα αγορασμένο theme με το δικό του framework και μερικά plugins και μέχρι να τελειώσει το project έχεις βάλει άλλα 5-6 plugins και μετά καλείσαι να βγάλεις score στο google insights.

Πως θα καταφέρω να φορτώσω ασύγχρονα όλα αυτά τα js σε επίπεδο wordpress χωρίς να σπάσει η σελίδα και να είναι upgradable το theme και τα plugins?

 

Πέρα από το να κάνω όλα τα scripts wp_dequeue_script() που δε νομίζω να είναι και τόσο πρακτικό, υπάρχει καμία άλλη δοκιμασμένη λύση?

 

Ευχαριστώ για το χρόνο σας

Δημοσ.

Δοκίμασε να βάλεις τον παρακατω κωδικα στο functions.php του theme σου:

// Defer jQuery Parsing using the HTML5 defer property
if (!(is_admin() )) {
    function defer_parsing_of_js ( $url ) {
        if ( FALSE === strpos( $url, '.js' ) ) return $url;
        if ( strpos( $url, 'jquery.js' ) ) return $url;
        // return "$url' defer ";
        return "$url' defer onload='";
    }
    add_filter( 'clean_url', 'defer_parsing_of_js', 11, 1 );
}

Και μετα κανε scan τη σελιδα σου στο gtmetrix.com και δες τι σκορ σου δινει στο Defer Parsing of Javascript

 

Συνήθως εγκαθιστω το W3C Total Cache και το κανει απο μονο του.

Δημοσ.

Νομίζω το είχα ξαναδοκιμάσει το συγκεκριμένο και μετά σκάγανε τα περισσότερα plugins μιας και δεν βρίσκανε την jquery.

Το ίδιο γινόταν και με το W3C Total Cache όταν έβαζα τα .js να τα κάνει defer.

 

Θα δοκιμάσω πάλι for the benefit αλλά αν κάποιος άλλος το έχει λύσει με διαφορετικό τρόπο θα ήταν ενδιαφέρον να δούμε πως.(μιλάμε πάντα για wordpress site)

 

dominotrix με τον παραπάνω κώδικα σου έβγαλε όλα τα .js από το google insights?

Δημοσ.

Γνώμη μου είναι να κάνεις όλα τα js και css minify , και να περάσεις από tinypng όλες τις εικόνες. Παντού short init στα ajax σου και plugins με το σταγονόμετρο. Προσπάθησε να γράψεις μόνος σου κάποια από αυτά ή να "κόψεις" κώδικα από τα υπάρχοντα. Πριν λίγο καιρό είχα το ίδιο πρόβλημα , θα μπεις σε μεγάλο λούκι με πολλά plugins ειδικά yith (woocommerce ajax search πχ) αν δεν φορτώσει η jQuery στο head. 

http://stackoverflow.com/questions/15049416/how-to-include-jquery-in-the-footer-when-using-document-ready-in-header

Αν βρεθεί κάποιος τρόπος με ενδιαφέρει και μένα , αλλά δεν νομίζω να πετύχεις κάτι χωρίς heavy customization , πρέπει να κατέβουν όλα τα js στο footer και συγκεκριμένα μετά την jQuery .

  • Like 1
  • 1 μήνα μετά...

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...