Я установил Magento 2 и установил режим разработчика, затем я установил один модуль, содержащий файлы css и js. Модуль работает нормально, а файлы CSS и JS отображаются из папки pub / static. Теперь я сделал css изменения в каталоге css файла модуля и выполнил команду
php bin/magento setup:static-content:deploy
но Magento не вносит мои новые изменения в файлы pub / static css, поэтому я получаю старое содержимое файла css. Кто-нибудь знает, как восстановить весь файл CSS в папке pub / static?
magento2
css
deploy
static-content-deploy
Чираг Додиа
источник
источник
.htaccess
файл вpub/static
папке, чтобы он знал, как создавать символические ссылки на файлы, если вы удалили папку pub / static, которая.htaccess
сейчас отсутствуетОтветы:
Перед удалением pub / static сделайте резервную копию pub / static / .htaccess и восстановите ее снова. в противном случае все ваши css и js покажут ошибку 404!
pub/static
[Сохранить резервную копию .htaccess и скопировать его снова]var/cache
var/composer_home
var/generation
var/page_cache
var/view_preprocessed
php bin/magento setup:static-content:deploy
источник
ответы здесь не упоминают, что вы не должны удалять .htaccess в папке pub / static.
чтобы удалить все файлы, кроме .htacces, войдите в каталог pub / static и запустите
тогда вы можете запустить
источник
Я просто удалил css файлы из
pub/static
папки и запустил команду:Он сгенерирует тот же файл с последними изменениями.
источник
Так как вопрос для
js and css
обновления в Magento 2 в режиме разработчика .pub/static/frontend/namespace/theme/ ... module/js/...
удалите тот же файл, чтобы после обновления страницы свежий файл JS генерировался в папке pub.Настройка темы в magento
...\dev\tools\grunt\configs\themes.js
Клонируйте любой пример темы luma theme к вашей теме и присвойте ей имя, предположим, xyz
В корневой папке измените имя файла: Gruntfile.js.sample на Gruntfile.js
В корневой папке измените имя файла: package.json.sample на package.json
Нужно иметь grunt в папке вашего сайта, иначе установить через npm
Откройте командную строку с правами администратора
Перейти к папке сайта в CMD и нажать команду
grunt exec:theme
впервые после развертывания темыТогда
grunt less:theme
каждый раз, если мы делаем какие-либо изменения в менееЕсли вы делаете частые изменения в меньшем количестве использования, то
grunt watch
это будет автоматический ударgrunt less:theme
источник
Простой способ 1
В Magento Admin. Перейдите
System > Tools > Cache Management
и нажмите Очистить кэш статических файлов .Простой способ 2
Если вы только что изменили уже существующий файл CSS , вам нужно просто удалить соответствующий файл
pub/static
, а затем, когда вы обновите страницу, он сгенерирует файл новой версии CSS. Работает в режиме разработчика .уведомление
Когда вы создаете новый файл, а не модифицируете существующий файл, вам также может потребоваться очистить кеш
php bin/magento cache:flush
.По умолчанию режима и режим разработчика не требуется развернуть статические файлы представлений , из - за статические файлы, динамически , а не материализовались. (Справка: о режимах Magento )
В производственном режиме вам также может понадобиться,
php bin/magento setup:static-content:deploy
иphp bin/magento cache:flush
я еще не пробовал производственный режим .источник
Итак, основываясь на том, что я прочитал в различных других постах, и на моем личном опыте здесь происходит процесс восстановления CSS или любого статического содержимого:
Это уничтожит все необходимые файлы кэша / поколения / и т.д., не удаляя ничего, что вам действительно нужно.
Это затем перекомпилирует файлы. И, наконец:
После последней команды все должно быть новым и свежим, просто обновите страницу.
----- Примечания ------
1) Убедитесь, что ваши права доступа к файлу и владелец: группа пользователей настроена правильно, прежде чем делать это, вам, возможно, придется поговорить об этом с вашим системным администратором.
2) Если ваша команда setup: upgrade не удалась, она может удалить файлы и не сможет записать новые, как это было в моем случае из-за прав доступа к файлам. Это может сломать ваш сайт, просто сгладить разрешения, а затем снова запустить команду.
3) Я не нашел (пока) способа перекомпилировать только определенную тему или файл (было бы очень полезно, если бы кто-нибудь нашел способ) без написания полностью собственного скрипта
Если кто-то знает что-то лучше, дайте мне знать, потому что 12 минут компиляции файлов, потому что мне пришлось внести некоторые изменения в CSS, на мой взгляд, очень плохой дизайн.
--- Редактировать ---
В Magento 2 подключен Grunt, и это значительно упрощает обновление файлов CSS / LESS, если вы потратите время на его настройку. Большинство файлов находятся в виде файлов .sample, просто удалите расширение файла .sample, настройте файл themes.js в папке / dev / tools / grunt / configs. Затем, когда вам нужно обновить ваши файлы LESS, вы просто запускаете grunt less: - theme-- из командной строки.
Ресурс: http://devdocs.magento.com/guides/v2.0/frontend-dev-guide/css-topics/css_debug.html
источник
не забудьте запустить
grunt exec:theme
,grunt less:theme
команды , гдеtheme
тема вы объявлены вthemes.js
файле конфигурации из папки пехотинца (все это в руководстве для разработчиков) , и когда у вас есть Magento в режиме разработчика , вы не должны выполнить команду статического развертыванияMagento2
работает сSymlinks
источник
Запустите эти команды в корневой папке Magento :
источник
В связи с этим вопросом следует сделать одно важное замечание, на которое большинство ответов конкретно не указано. В вашем случае (с настройкой, которую вы используете) причина, по которой ваши CSS-изменения не обнаруживаются при регенерации CSS-файла в
pub/static
папку, заключается в том, что вы не удаляете содержимоеvar/view_preprocessed
директории. Внутри этого каталога есть кэшированная версия вашего CSS, которая загружается вpub/static
папку при запускеphp bin/magento setup:static-content:deploy
команды.Поэтому, когда вы перекомпилируете, Magento сначала будет искать
var/view_preprocessed
папку для кэшированного CSS. Если эта папка пуста, она будет искать файлы тем и извлекать этот CSS для компиляции.Эти параметры настраиваются, поэтому есть много способов добраться до пункта назначения, который изменит путь, по которому вам нужно идти. Но для решения вашей конкретной установки:
Удалить файлы из
pub/static
папки:rm -rf pub/static/*
Удалить файлы из
var/view_preprocessed
папки:rm -rf var/view_preprocessed/*
Перекомпилируйте статическую папку pub:
php bin/magento setup:static-content:deploy
Очистить кеш это включено:
php bin/magento cache:clean
Обновите браузер.
источник
app/etc/di.xml
). Но у меня были смешанные результаты во время тестирования. ВоУдалите папку, содержащую вашу тему, в pub / static /
очистите кэш внешнего интерфейса.
Вы можете использовать grunt для просмотра таблиц стилей. Читать здесь
источник
pub/static
777 разрешениеphp bin/magento setup:static-content:deploy
Вы увидите новый CSS.
НОТА:
Дайте правильную папку и разрешение файла.
Я надеюсь, что это поможет вам.
источник
Не могли бы вы просто сбросить статический кеш в админ-панели, а затем
источник
Убедитесь, что вы используете режим разработчика.
Затем выполните следующий код:
Обновите страницу веб-интерфейса, Эти шаги решили мою проблему.
источник
Однако вы можете добавить флаг
-f
или--force
к команде установки.Пример:
источник
Я собираюсь бросить мою каплю мудрости здесь.
Я использую
cache_fly.sh
скрипт bash, который в основном делает:ПРИМЕЧАНИЕ: я добавил эхо, чтобы показать мне, сколько времени я потратил впустую, ожидая, пока он заработает. Также
./magento
есть скрипт для выполненияphp bin/magento
или вызова той же вещи в контейнере Docker, если Docker используется, вы можете сделать свой или указать,php bin/magento
но если вы читаете это, вы должны знать, о чем я говорю, если нет, пожалуйста, запустите запрос для помощи.источник
Маленькая адаптация для моего случая
источник