CHAPITRE 32 — Référence des scripts en ligne de commande
⌨️ Chapitre 32 — Référence des scripts CLI
Tous les scripts en ligne de commande livrés avec le module. Chemin : htdocs/custom/infrasstudio/scripts/.
🔍 rescan_slots.php
rescan_slots.php
Rescanne les fichiers tpl.php d'un site et synchronise la table des slots.
php rescan_slots.php <website_ref_or_id> [--entity=N] [--purge-orphans] [--dry-run] [--lint]
| Effet |
|---|---|
| Force l'entity Dolibarr. |
| Supprime immédiatement les slots orphelins (sans attendre 30 |
| Affiche les changements sans les appliquer. |
| Vérifie la syntaxe |
🔧 rebuild_solution_wrappers.php
rebuild_solution_wrappers.php
Reconstruit manuellement les wrappers solution-*.php du catalogue produit.
php rebuild_solution_wrappers.php <websitekey-or-id> <public-docroot> [entity]
# Exemple
php rebuild_solution_wrappers.php monsite /var/www/monsite 2
🗺️ generate_sitemap.php
generate_sitemap.php
Génère le fichier sitemap.xml d'un site.
php generate_sitemap.php <website_ref> [entity]
Idéal pour une planification quotidienne via cron quotidien :
# crontab -e
0 3 * * * php /var/www/dolibarr/htdocs/custom/infrasstudio/scripts/generate_sitemap.php monsite 2
📦 preset_default.php
preset_default.php
LoaderChargeur générique de presets JSON. Crée des extrafieldschamps personnalisés produit en masse.série.
php preset_default.php <path-to-chemin-vers-preset.json>
# Exemple avec le preset livré
php preset_default.php htdocs/custom/infrasstudio/presets/keaticweb.json
Format JSON attendu : voir la documentation des presets.
🔄 preset_keatic.php
preset_keatic.php
Wrapper compatde compatibilité — équivalent à preset_default.php presets/keaticweb.json.
📂 consolidate_sister_pages.php
consolidate_sister_pages.php
Consolide une famille de pages sœurs (patternmodèle B legacy) en 1une page canonique +et Nplusieurs stubs (patternmodèle A moderne).
php consolidate_sister_pages.php <site_ref> \
[--entity=N] \
[--base-slug=<slug>] \
[--dry-run] \
[--extractor=/path/to/extractor.php]
🔄 convert_tpl_to_slots.php
convert_tpl_to_slots.php
Transforme les echo $langs->trans('Key') d'un fichier tpl.php en tokens {{slot:...|default=@lang:Key}}.
php convert_tpl_to_slots.php <tpl_path> [--group=xxx] [--prefix=yyy] [--dry-run] [--hook-engine]
| Effet |
|---|---|
| Attribut group par défaut. |
| Préfixe |
|
|
| Ajoute |
🎯 Bonnes pratiques CLI
en ligne de commande
- Toujours utiliser
--dry-rund'abordsuravant une migration importante. - Lancer en tant qu'utilisateur Apache (
sudo -u www-data php script.php) pour éviter les problèmes de permissions sur les fichiers générés. PourEn multicompany, toujours préciser--entity=N.- Capturer la sortie dans un
logjournal :php script.php 2>&1 | tee /tmp/script.log.
🎉 Fin de la Partie VI — — Vous avezdisposez maintenantdésormais d'un mémo complet : constantes, shortcodes, hooks, tables SQL, scripts CLI.en ligne de commande. Tout est référencérassemblé en un seul endroit.endroit pour une consultation rapide.