Ressources en ligne:
- Clear directories during development (quels dossiers vider, dans quels cas).
Notes valables pour la version 2.3.x
Accéder au bash d’un container Docker en tant qu’utilisateur www-data: docker exec -tiu www-data {container name} bash
.
Exécuter une commande Magento 2 dans le container Docker « web » en tant qu’utilisateur www-data: docker exec -tiu www-data {web container name} n98-magerun2 {commande}
.
Certaines commandes Magento (Magerun) ne fonctionnent plus?
Erreur: There are no commands defined in the « app:config » namespace.
Mettre à jour l’autoloading composer:
1 |
$ composer dump |
Changement de mode
$ bin/magento deploy:mode:show
Display the current mode.$ bin/magento deploy:mode:set {mode} [-s|--skip-compilation]
Change mode (les différents modes dans Magento 2).
Déployer les sample datas
$ bin/magento sampledata:deploy
, puis$ bin/magento setup:upgrade
Install sample data using Composer.
Nettoyer les caches
$ bin/magento cache:clean
($ bin/magento cache:flush
pour un nettoyage plus radical qui va impacter les caches d’autres sites/applications -> à n’exécuter que sicache:clean
n’a pas fonctionné)rm -rf pub/static/*; rm -rf var/view_preprocessed/*
Vider les caches statiques du thème (pas utile en mode developer à priori).
Désactiver les caches pour le front-end
1 |
bin/magento cache:disable full_page block_html layout |
Nettoyer les caches CSS (moins bourrin que le rm -rf pub/static/...
de Magento 2)
Attention: ces commandes ne concernent que les ressources CSS (pas les JS).
1 |
$ find pub/static/frontend/MyVendor -type f \( -name '*.css' \) -delete; find var/view_preprocessed/pub/static/frontend/MyVendor -type f \( -name '*.css' -o -name '*.less' \) -delete |
Ces commandes expliquées:
1 2 3 4 5 |
// Suppression des ressources CSS front compilées du thème (celles générées via Grunt ou la commande setup:static-content:deploy): $ find pub/static/frontend/MyVendor -type f \( -name '*.css' \) -delete // Suppression des sources LESS servant à la compilation des ressources front pré-citées: $ find var/view_preprocessed/pub/static/frontend/MyVendor -type f \( -name '*.css' -o -name '*.less' \) -delete |
Attention: en cas de modification dans la hiérarchie des thèmes ou d’ajout d’un nouveau thème un rm -rf pub/static/*; rm -rf var/view_preprocessed/*
reste conseillé.
Nettoyer les caches JS
1 |
$ bin/magento cache:clean full_page block_html |
Les commandes de compilation des assets front-end
grunt clean && grunt exec && grunt less && grunt watch
La commandegrunt
à lancer le matin.
Aide au développement/debug
$ bin/magento dev:template-hints:enable; bin/magento cache:clean
et$ bin/magento dev:template-hints:disable; bin/magento cache:clean
pour activer/désactiver les templates hints.-
$ n98-magerun2 dev:template-hints:enable; n98-magerun2 cache:clean
$ n98-magerun2 dev:template-hints:disable; n98-magerun2 cache:clean
Faire un backup (dump) de la base de données et des médias
Il existe deux commandes magerun pour ça:
1 2 |
$ bin/magento db:dump $ bin/magento media:dump |
Importer un backup (dump) de la base de données et des médias
1 2 |
$ bin/magento db:import [<nom_du_fichier_dump>] # Exemple: bin/magento db:import backup/my-project.sql |
Importer un backup (dump) de la base de données gzippé
1 2 |
$ n98-magerun2 db:import --compression=gz [<nom_du_fichier_dump>] # Exemple: n98-magerun2 db:import --compression=gz release-candidate-1.sql.gz |
Si erreur You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '' at line 1
:
1 |
n98-magerun2 db:import --drop --compression=gz release-candidate-1.sql.gz |
Appliquer les changements après import d’une nouvelle base de données
1 |
$ n98-magerun s:d:c |
Appliquer les modifications des fichiers app/etc/config.php
et app/etc/env.php
1 |
$ bin/magento app:config:import |
Appliquer les changements de schéma en base de données
1 |
$ bin/magento setup:upgrade |
Déployer le thème adminhtml
en langue anglaise
Si les pages de votre interface d’admin sont très lentes à se charger:
1 |
$ bin/magento setup:static-content:deploy -f --area=adminhtml en_US |
Déployer tous les thèmes frontend
en langue française
…sans se taper une erreur d'allowed memory size
en plein milieu du déploiement:
1 |
$ php -dmemory_limit=-1 bin/magento setup:static-content:deploy -f --area=frontend fr_FR |
setup:di:compile
Si erreur: PHP Fatal error: Allowed memory size ... bytes exhausted...
:
1 |
$ php -dmemory_limit=-1 bin/magento setup:di:compile |
Créer un compte admin
1 2 |
// Les caractères spéciaux ($) doivent être quotés (cf. exemple de password) $ bin/magento admin:user:create --admin-user=someone@something.com --admin-password=1234'$'Aqwx --admin-email=someone@something.com --admin-firstname=Someone --admin-lastname=Something |
Modifier le mot de passe du compte admin
1 |
$ n98-magerun2 admin:user:change-password admin nouveaupasse |
Dévérouiller le compte admin
1 |
$ bin/magento admin:user:unlock admin |
Faire un dump de la toute la config BO (fichier généré: config.php)
ATTENTION AVANT DE LANCER CETTE COMMANDE, FAITES UNE COPIE DE VOTRE FICHIER config.php INITIAL CAR IL SERA ECRASE!
1 |
$ n98-magerun2 app:config:dump |
Pour prise en compte des modifications effectuées dans le fichier config.php
:
1 |
$ n98-magerun2 app:config:import |
Ré-indexer le catalogue
1 |
$ n98-magerun2 indexer:reindex |
Si vous n’avez pas de produits en front après avoir lancé la commande de réindexation, vous pouvez tenter ceci:
1 |
$ n98-magerun2 indexer:reset && php -dmemory_limit=-1 bin/magento indexer:reindex |
Manipuler les données des comptes clients (customers)
Lister les comptes clients
1 |
$ n98-magerun2 customer:list |
Changer le mot de passe d’un compte client
1 |
$ n98-magerun2 customer:reset-password [email] [nouveau mot de passe] |