wp_enqueue_scripts
Το σωστό hook για να φορτώνετε stylesheets και scripts στο δημόσιο site με τις wp_enqueue_style() και wp_enqueue_script().
Πότε εκτελείται
Το WordPress εκτελεί το wp_enqueue_scripts μέσα από το wp_head με προτεραιότητα 1, δηλαδή σε κάθε δημόσια σελίδα λίγο πριν τυπωθούν styles και scripts. Το κύριο ερώτημα έχει ήδη εκτελεστεί, οπότε οι συνθήκες όπως is_page() και is_singular() λειτουργούν.
Παρά το όνομά του, είναι και για stylesheets, όχι μόνο για scripts. Δεν εκτελείται στη διαχείριση ούτε στη σελίδα σύνδεσης· εκεί χρησιμοποιήστε τα admin_enqueue_scripts και login_enqueue_scripts.
Παράμετροι
Καμία. Το callback σας δεν δέχεται ορίσματα.
Παράδειγμα: CSS μόνο σε μία σελίδα
add_action( 'wp_enqueue_scripts', function () {
if ( ! is_page( 'contact' ) ) {
return;
}
wp_register_style( 'my-contact-page', false, array(), '1.0.0' );
wp_enqueue_style( 'my-contact-page' );
wp_add_inline_style( 'my-contact-page', '.entry-title { text-align: center; }' );
} );
Καλό να ξέρετε
- Αν καταχωρίσετε handle με false ως πηγή, όπως στο παράδειγμα, έχετε πού να προσθέσετε ενσωματωμένο CSS χωρίς ξεχωριστό αρχείο.
- Για να αφαιρέσετε αρχείο θέματος ή plugin, καλέστε τη wp_dequeue_style() ή τη wp_dequeue_script() με το handle του σε μεταγενέστερη προτεραιότητα, π.χ. 100, ώστε να έχει ήδη προστεθεί.
- Για styles μέσα στον επεξεργαστή μπλοκ, χρησιμοποιήστε το enqueue_block_assets ή την add_editor_style().