Cancella cache dei temi / CSS in Magento 2


28

Quando uso un negozio Magento 2, qual è il modo suggerito per pulire le cache?

Modifico i .lessfile e poi lo faccio attualmente

rm -rf pub/static/frontend/* var/view_preprocessed/ var/*cache/*

Ma questo sembra essere il metodo della forza bruta.

php bin/magento cache:flush --all

sembra non fare il lavoro.

Ce n'è uno migliore?


dal momento che la tua domanda è ancora irrisolta, dai un'occhiata alla mia risposta qui: magento.stackexchange.com/a/101139/27685 , penso che potrebbe aiutarti.
MauroNigrele,

Sto anche riscontrando molti problemi con la memorizzazione nella cache di CSS / Less, l'eliminazione manuale del modulo modificato in pub / static a volte aiuta ma non sempre. M2 si sta rivelando difficile da lavorare
Ben Crook,

Risposte:


18

Penso che il modo giusto per aggiornare i file .less ora sia

php bin/magento setup:static-content:deploy

Perché "Raccoglie, elabora e pubblica i file MENO di origine"

Un altro punto è utilizzare la modalità dev durante lo sviluppo, quindi secondo la documentazione "I file di visualizzazione statica non vengono memorizzati nella cache; vengono scritti nella directory pub / static di Magento ogni volta che vengono chiamati"

Per impostare Magento 2 in modalità sviluppatore è necessario eseguire i seguenti passaggi

  1. Elimina il contenuto delle directory var / generation e var / di:

    rm -rf <your Magento install dir>/var/di/* <your Magento install dir>/var/generation/*

  2. Imposta la modalità:

    php bin/magento setup:mode:set developer


1
non esiste più tale deploy:mode:setcomando (beta2). Ma ho impostato MAGE_MODEvia SetEnv. Perché dev:css:deploydevo inserire un nome file. Quale dovrei usare?
Alex,

scusa, questo è stato il mio male. setup: static-content: deploy è il comando corretto per farlo. distribuire anche: mode: set sembra funzionare ancora per me, non ce l'hai anche nell'elenco dei comandi di bin / magento?
FireBear,

capito, deploy: mode: set è stato modificato anche in setup: mode: set secondo goo.gl/Pive1U
FireBear

Sto ancora provando questa roba ...
Alex,

"I file di visualizzazione statici non vengono memorizzati nella cache; vengono scritti nella directory pub / static di Magento ogni volta che vengono chiamati" Penso che il documento sia errato. C'è un RewriteCond !-fin .htaccessin pub/staticche rende Apache usare la versione cache se esiste.
Alex,

2

Esistono tre modi per cancellare la cache CSS, se le modifiche non si riflettono.

1. Usa Grunt invece, così non avrai bisogno di pulire la cache dopo ogni cambio di CSS (modo consigliato), puoi vedere più documentazione su Grunt da questo link

2. Vai a sistema> Gestione cache> Gestione cache aggiuntiva> Svuota cache JavaScript / CSS.

inserisci qui la descrizione dell'immagine

3. Esegui il comando deploy (questo richiede una raccomandazione lunga e non buona, cambia anche la modalità in sviluppatore se non è presente).

php bin/magento setup:static-content:deploy

1

Penso che i pub/staticcontenuti (in modalità dev) siano generati con la stessa logica utilizzata per i var/generationfile, intendo, se il contenuto richiesto non esiste, viene creato ma se esiste già viene riutilizzato.

Quindi penso che dovresti pulire pub/static[area]anche o eseguire setup:static-content:deployper sostituire tutto, ma questo processo è molto lento da eseguire ogni volta che apporti una modifica.


0

In modalità sviluppatore, invece di cancellare manualmente pub/statice var/view_preprocessed.

Vai a System > Tools > Cache Managemente fai clic su Svuota cache file statici .



0

Per svuotare la cache di Magento nel comando come è possibile eseguire:

bin/magento cache:flush

Per svuotare la memoria cache è possibile eseguire:

bin/magento cache:clean

Per verificare lo stato dell'esecuzione della cache (lo stato deve essere 1 per attivo e 0 per disabilitato):

bin/magento cache:status

Per disabilitare la cache magento tutti insieme esegui:

bin/magento cache:disable

Per abilitare l'esecuzione della cache:

bin/magento cache:enable

Ma penso che il tuo problema risieda nella modalità Magento impostata sulla modalità di produzione. Puoi controllare la tua modalità usando: bin/magento deploy:mode:show Puoi leggere di più sulla produzione di magento e sulla modalità sviluppatore qui

In alternativa alla modalità sviluppatore su bin/magento setup:static-content:deploypuoi usarlo bin/magento setup:upgradecancella il codice compilato e la cache. O semplicemente elimina manualmente qualsiasi cosa dalla pub/staticcartella del tuo progetto che devi aggiornare. Se manca qualcosa da quella cartella verrà rigenerato con le ultime modifiche.

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.