Va mai bene includere CSS inline nei plugin?


21

Normalmente in un plugin aggiungerei stili usando wp_enqueue_style. Tuttavia, sto attualmente creando un plug-in che necessita solo di poche righe di CSS e mi chiedo se potrebbe essere meglio servire gli stili in linea per salvare una richiesta. Ovviamente ci sono molti vantaggi nell'utilizzare wp_enqueue_style, ma valgono la richiesta extra per un così piccolo pezzo di CSS? Esistono delle "migliori pratiche" accettate in questo settore?

Risposte:


14

TL; DR; Enqueue

Utilizzando un foglio di stile esterno

  • PRO: tutti i tuoi stili sono in un posto.
  • PRO: riduce la codifica delle pagine Web.
  • PRO: più facile da mantenere il plugin.
  • PRO: può utilizzare hook per modificare la posizione del file.
  • PRO: può usare hook per annullare l'autorizzazione del file.
  • PRO: può usare automaticamente gli stili di minificazione.
  • CON: Potrebbe aggiungere una richiesta HTTP aggiuntiva (può essere superata).

Utilizzo degli stili incorporati

  • PRO: può vedere direttamente lo stile applicato.
  • PRO: nessuna richiesta HTTP aggiuntiva.
  • CON: Impossibile utilizzare gli hook per modificare gli stili.
  • CON: Non è possibile utilizzare gli hook per liberare gli stili.
  • CON: Impossibile minimizzare gli stili.
  • CON: Necessario ! Importante ignorare lo stile

Normalmente direi: certo, se sei l'unico ad usarlo, vai avanti e fallo in linea. Ma stai parlando di un plugin, il che significa che il codice sarà pubblico, quindi cerca di estenderlo. In questo momento hai solo alcune linee di stile:

  • CON: E se quei pochi diventassero di più?
  • CON: Cosa succede se qualcuno estende il tuo plugin?
  • CON: E se qualcuno volesse modificarlo?
  • CON: Cosa succede se qualcuno lo cerca nei file CSS?
  • CON: Cosa succede se qualcuno vuole minimizzarlo automaticamente?

Pertanto, accodare. (Preferibilmente solo se il plugin ne ha bisogno.) Lo stesso vale per JavaScript . (Ma questo dovrebbe essere incluso nel piè di pagina, se possibile.)


Va bene usare gli stili in linea sul backend?
shea,

@bungeshea Se qualcuno cambierà il tuo plugin, potrebbe voler cambiare anche il backend nel modo giusto;) Assicurati di accodare lo script solo quando sei nel back-end. Ad esempio: function _your_enqueue( $hook )puoi testare $ hook per vedere se sei nella tua pagina delle opzioni. In alternativa è possibile utilizzare current_screen()per proprietà più semplici . Il fatto è che sei autorizzato a farlo, ma l'uso generale è un plugin costituito da un file .php per il codice lato server e può avere o meno file di immagini, .js e .css.
Derk-

1
Notate che la richiesta HTTP aggiuntiva può essere superata - potete chiarire questo?
Dustin,

2
Non puoi, ma l'utente del plugin può farlo. Esistono diversi plug-in e funzioni scritti, appena prima che la pagina venga emessa, ottieni TUTTI gli stili accodati e li aggiunge a un file ridotto e combinato. Indipendentemente dal numero di file CSS aggiunti, il visualizzatore ne vedrà solo uno. Lo stesso per javascript. Tuttavia, questo non è il tuo "problema" nel tuo caso. È l'ottimizzazione che non è necessaria e imho, la richiesta HTTP in più non è all'altezza di tutti i PRO.
Derk-

1
Circa l'ultima frase - Gli stili AFAIK dovrebbero essere emessi nell'intestazione e non nel piè di pagina
Mark Kaplun,

2

È difficile rispondere e non sono davvero sicuro che esista una risposta ufficiale.

Capisco il sentimento di salvare una richiesta, ma lo stile in linea praticamente vince sempre. Un tema o un utente finale avranno difficoltà a modificare il CSS.

Con questo in mente, penso che lo farei in un plugin rilasciato pubblicamente ...

  1. se il CSS è assolutamente critico per il funzionamento del plugin, come nel caso delle presentazioni, ad esempio.

  2. Oppure, se includo anche un filtro nel plug-in che consente di modificare o rimuovere il CSS inline.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.