Tôi sợ rằng bạn không thể triển khai chỉ một chủ đề bằng setup:static-content:deploy
lệnh bảng điều khiển magento .
Tôi đã làm việc với sự phát triển của frontend M2 trong 2 tuần qua và tôi có thể khẳng định rằng nhà phát triển đó là một PAIN thực sự! Bạn sẽ mất rất nhiều thời gian để triển khai các thay đổi do sự phức tạp của hệ thống phân cấp tệp ít hơn và các dự phòng chủ đề.
Dù sao tôi Grunt bây giờ đây bạn sẽ tìm thấy cách cài đặt, cấu hình và sử dụng nó, với Grunt bạn có thể triển khai và / hoặc biên dịch lại các file ít hơn cho một chủ đề duy nhất.
Vì vậy, cách tiếp cận đó là ổn nếu bạn ở chế độ "nhà phát triển" vì Grunt không triển khai hình ảnh , phông chữ và tệp javascript để pub/static/...
magento sẽ thực hiện lần đầu tiên.
Để kích hoạt chế độ nhà phát triển, hãy chạy:
php bin/magento deploy:mode:set developer
Nếu bạn đang tìm cách triển khai toàn bộ nội dung cho một chủ đề duy nhất, production
tôi xin lỗi để nói rằng điều đó là không thể.
BTW Tôi khá chắc chắn rằng đó sẽ là một Yêu cầu Tính năng hay để thực hiện.
EDIT: Tin nóng!
Tôi tìm thấy một cách để triển khai tất cả các thay đổi nhanh hơn một chút:
- Cài đặt Grunt + cấu hình chủ đề của bạn (một cho mỗi ngôn ngữ)
- sau mỗi lần thay đổi chạy:
grunt exec:{theme_name} // Clean folders and deploy less files
grunt less:{theme_name} // Process less files
Voila bây giờ bạn sẽ có tất cả các thay đổi của mình được triển khai trong Chỉ ( 16 ?) 12 ~ 16 giây, 12 giây là hồ sơ cá nhân của tôi!
EDIT: Tin tức mới nhất 2!
Khẳng định! nếu bạn đang thực hiện thay đổi đối với một tệp (đã được triển khai) .less chỉ chạy grunt less:{theme_name}
.
Vì vậy, bạn chỉ phải chạy grunt exec:{theme_name}
khi:
- Thêm / Xóa / Đổi tên
*.less
tệp
- Thêm / Xóa / Đổi tên một
*.js
Phim
- Thêm / Xóa / Đổi tên
*.css
tệp
- Thêm / Xóa / Đổi tên
image
tệp
- Thêm bớt
requirejs-config.js
Ngoài ra tôi vô hiệu hóa blocks
, layouts
và full page
Caches, vì vậy bất kỳ thay đổi mẫu và / hoặc bố trí xml sẽ được hiển thị tự động.