在本教程中,我们将讨论Magento 2中的命令行界面(CLI)。如您所知,从Magento 2开始,他们添加了许多命令bin/magento
。这可能难以实现,但让我在本教程中解释更多细节。
在终端中运行命令时:
php bin/magento
要么
bin/magento
您将获得可用的Magento 2命令行列表,此列表包括自定义命令行
Usage:
command [options] [arguments]
Options:
--help (-h) Display this help message
--quiet (-q) Do not output any message
--verbose (-v|vv|vvv) Increase the verbosity of messages: 1 for normal output, 2 for more verbose output and 3 for debug
--version (-V) Display this application version
--ansi Force ANSI output
--no-ansi Disable ANSI output
--no-interaction (-n) Do not ask any interactive question
Available commands:
help Displays help for a command
list Lists commands
admin
admin:user:create Creates an administrator
admin:user:unlock Unlock Admin Account
cache
cache:clean Cleans cache type(s)
cache:disable Disables cache type(s)
cache:enable Enables cache type(s)
cache:flush Flushes cache storage used by cache type(s)
cache:status Checks cache status
catalog
catalog:images:resize Creates resized product images
catalog:product:attributes:cleanup Removes unused product attributes.
cron
cron:run Runs jobs by schedule
customer
customer:hash:upgrade Upgrade customer's hash according to the latest algorithm
deploy
deploy:mode:set Set application mode.
deploy:mode:show Displays current application mode.
dev
dev:source-theme:deploy Collects and publishes source files for theme.
dev:tests:run Runs tests
dev:urn-catalog:generate Generates the catalog of URNs to *.xsd mappings for the IDE to highlight xml.
dev:xml:convert Converts XML file using XSL style sheets
i18n
i18n:collect-phrases Discovers phrases in the codebase
i18n:pack Saves language package
i18n:uninstall Uninstalls language packages
indexer
indexer:info Shows allowed Indexers
indexer:reindex Reindexes Data
indexer:reset Resets indexer status to invalid
indexer:set-mode Sets index mode type
indexer:show-mode Shows Index Mode
indexer:status Shows status of Indexer
info
info:adminuri Displays the Magento Admin URI
info:backups:list Prints list of available backup files
info:currency:list Displays the list of available currencies
info:dependencies:show-framework Shows number of dependencies on Magento framework
info:dependencies:show-modules Shows number of dependencies between modules
info:dependencies:show-modules-circular Shows number of circular dependencies between modules
info:language:list Displays the list of available language locales
info:timezone:list Displays the list of available timezones
maintenance
maintenance:allow-ips Sets maintenance mode exempt IPs
maintenance:disable Disables maintenance mode
maintenance:enable Enables maintenance mode
maintenance:status Displays maintenance mode status
module
module:disable Disables specified modules
module:enable Enables specified modules
module:status Displays status of modules
module:uninstall Uninstalls modules installed by composer
sampledata
sampledata:deploy Deploy sample data modules
sampledata:remove Remove all sample data packages from composer.json
sampledata:reset Reset all sample data modules for re-installation
setup
setup:backup Takes backup of Magento Application code base, media and database
setup:config:set Creates or modifies the deployment configuration
setup:cron:run Runs cron job scheduled for setup application
setup:db-data:upgrade Installs and upgrades data in the DB
setup:db-schema:upgrade Installs and upgrades the DB schema
setup:db:status Checks if DB schema or data requires upgrade
setup:di:compile Generates DI configuration and all missing classes that can be auto-generated
setup:install Installs the Magento application
setup:performance:generate-fixtures Generates fixtures
setup:rollback Rolls back Magento Application codebase, media and database
setup:static-content:deploy Deploys static view files
setup:store-config:set Installs the store configuration
setup:uninstall Uninstalls the Magento application
setup:upgrade Upgrades the Magento application, DB data, and schema
theme
theme:uninstall Uninstalls theme
或者您可以看到类似于此屏幕截图
命令行类别
我们可以将列表分为以下几类:
- 高速缓存
- 索引
- Cron工作
- 代码编译器
- 设置Magento模式
- i18n翻译
- 运行单元测试
- 保养
- 模块管理
- 设置:安装,升级,卸载,备份,回滚
- 主题
- 部署
接下来,我们将采用每个类别的几个示例。
缓存命令行
如何检查缓存类型的状态
php bin/magento cache:status
结果:
config: 1
layout: 1
block_html: 1
collections: 1
db_ddl: 1
eav: 1
full_page: 1
translate: 1
config_integration: 1
config_integration_api: 1
config_webservice: 1
如何清理缓存类型
php bin/magento cache:clean
结果:
$ php bin/magento cache:clean
Cleaned cache types:
config
layout
block_html
collections
reflection
db_ddl
eav
customer_notification
full_page
config_integration
config_integration_api
translate
config_webservice
如何刷新缓存类型
php bin/magento cache:flush
如何检查启用,禁用缓存类型
php bin/magento cache:enable
php bin/magento cache:disable
高级命令:
magento cache:enable [type] ... [type]
magento cache:disable [type] ... [type]
例如禁用整页缓存
magento cache:disable full_page
Indexer命令行
通过以下命令检查索引器状态
php bin/magento indexer:info
我们会得到结果:
design_config_grid Design Config Grid
customer_grid Customer Grid
catalog_category_product Category Products
catalog_product_category Product Categories
catalog_product_price Product Price
catalog_product_attribute Product EAV
catalogsearch_fulltext Catalog Search
cataloginventory_stock Stock
catalogrule_rule Catalog Rule Product
catalogrule_product Catalog Product Rule
如何重新索引数据
php bin/magento indexer:reindex
如何将索引器状态重置为无效
php bin/magento indexer:reset
如何显示索引模式
php bin/magento indexer:show-mode
结果:
$ php bin/magento indexer:show-mode
Design Config Grid: Update on Save
Customer Grid: Update on Save
Category Products: Update on Save
Product Categories: Update on Save
Product Price: Update on Save
Product EAV: Update on Save
Catalog Search: Update on Save
Stock: Update on Save
Catalog Rule Product: Update on Save
Catalog Product Rule: Update on Save
如何设置索引模式类型
php bin/magento indexer:set-mode {realtime|schedule} [indexer]
例如:
magento indexer:set-mode schedule catalog_category_product catalog_product_category
部署命令行
命令语法:
php bin/magento setup:static-content:deploy <lang> ... <lang> [--dry-run]
如何运行部署静态内容
php bin/magento setup:static-content:deploy
它将显示如下:
$ php bin/magento setup:static-content:deploy
Requested languages: en_US
=== frontend -> Magento/blank -> en_US ===
........................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................
默认情况下,它将运行默认语言的部署静态内容: en_EN
如果要部署其他语言的静态内容,例如: pt_BR
跑
php bin/magento setup:static-content:deploy pt_BR
然后得到结果:
Requested languages: pt_BR
=== frontend -> Magento/luma -> pt_BR ===
... progress indicator ...
Successful: 1613 files; errors: 0
=== frontend -> Magento/blank -> pt_BR ===
... progress indicator ...
Successful: 1620 files; errors: 0
=== adminhtml -> Magento/backend -> pt_BR ===
... progress indicator ...
Successful: 1626 files; errors: 0
=== Minify templates ===
... progress indicator ...
Successful: 858 files modified
---
如何通过命令行获取管理路径
你知道吗?您无需访问etc/env.php
文件即可获得管理路径。
跑
php bin/magento info:adminuri
结果:
$ php bin/magento info:adminuri
Admin URI: /admin
所以路径是/admin
,现在浏览您的浏览器到domain.com/admin访问Magento 2后端。
如何通过命令行启用维护模式
启用维护模式
php bin/magento maintenance:enable
结果:
$ php bin/magento maintenance:enable
Enabled maintenance mode
禁用维护模式
php bin/magento maintenance:disable
允许IP访问商店
设置维护模式免除IP
php bin/magento maintenance:allow-ips
例如:
php bin/magento maintenance:allow-ips 168.168.168.168
Set exempt IP-addresses: 168.168.168.168
如何设置Magento开发人员模式或产品模式
显示当前的Magento 2模式
php bin/magento deploy:mode:show
结果:
$ php bin/magento deploy:mode:show
Current application mode: default. (Note: Environment variables may override this value.)
目前,我们处于默认模式,让我们切换到开发者模式
php bin/magento deploy:mode:set developer
结果:
$ php bin/magento deploy:mode:set developer
Enabled developer mode.
恭喜!现在您的商店正在开发者模式下运行