Installation automatique de scripts dans WHMCS

Ajouter Softaculous Auto Installer dans WHMCS

Mis à jours 21 juillet 2024

WHMCS et Softaculous sont des outils essentiels pour les revendeurs d’hébergement web. WHMCS permet de gérer la facturation, le support client et l’automatisation des tâches administratives, tandis que Softaculous facilite l’installation de nombreuses applications web en un seul clic.

Ce guide vous accompagnera dans la configuration de ces outils pour qu’ils installent automatiquement les scripts lors de la création du compte utilisateur. Ce tutoriel suppose que vous avez déjà installé WHMCS et Softaculous sur votre serveur.

Installation du Hook Softaculous dans WHMCS

  1. Téléchargez d’abord ce Hook d’installation automatique File : Autoinstall.zip
  2. Ensuite, décompressez-le puis uploader (téléverser) le fichier appelé softaculous.php dans /chemin/vers/whmcs/includes/hooks/Directory
  3. Si vous souhaitez une correction d’éventuelles erreurs ou tester le bon fonctionnement de l’installation automatique, le fichier softaculous_debug.php est également à télécharger dans /chemin/vers/whmcs/includes/hooks/Directory

Une fois que vous êtes sûr du bon fonctionnement de l’installation, vous pouvez supprimer en toute sécurité le fichier softaculous_debug.php

L’ajout de l’installation automatique pour les scripts personnalisés demande le téléchargement et la modification du fichier softaculous_extra.php. Sinon, vous n’en avez pas besoin.

Comment faire pour modifier un produit ou un service ?

Connectez-vous maintenant à votre panneau d’administration WHMCS. Ce guide suppose que vous avez déjà configuré WHMCS pour créer automatiquement des comptes d’utilisateur.

Toutefois, si votre serveur n’est pas encore configuré, vous trouverez des informations détaillées sur le wiki de WHMCS

Configurer les champs personnalisés ?

  1. Allez dans Configuration -> Produits / Services et cliquez sur l’icône «  Éditer le produit » du produit pour lequel vous souhaitez configurer l’installation automatique.
  1. Dans la section Modifier le produit, cliquez sur l’onglet « Champs personnalisés ». Dans l’onglet Champs personnalisés> Ajouter un nouveau champ personnalisé.
  2. Nous devrons ajouter 4 champs personnalisés.

Vous ne pouvez ajouter qu’un seul champ personnalisé à la fois. Après avoir ajouté le premier champ, cliquez sur le bouton «Enregistrer les modifications» pour que le seconde champ apparaisse.

Les images ci-dessous montrent comment nous ajoutons les quatre champs personnalisés.

Comment ajouter un champs personnalisé dans WHMCS étape 1
Comment ajouter un champ  personnalisé dans WHMCS étape 2

Remarque: vous pouvez indiquer «Aucun» comme première option de la liste des scripts. Si les utilisateurs ne souhaitent pas installer de script lors de la création de leur compte, ils peuvent choisir «Aucun» pour ne pas installer de script.

Très important: Remplissez le nom des champs comme c’est indiqué sur l’image. SI vous souhaitez modifier les noms de champ (par exemple, «Nom d’utilisateur Admin» au lieu de «Nom Admin»), vous devez également télécharger le fichier softaculous_extra.php (il dispose d’un exemple de code pour modifier les noms de champ).

Ajouter des champs personnalisés supplémentaires

Vous pouvez également configurer des champs supplémentaires pour des paramètres facultatifs tels que «Nom du site», «Description du site», etc. Continuez en ajoutant les champs que vous souhaitez de la même manière que ci-dessus.

Vous devez faire un changement de plus dans le softaculous_extra.php

D’abord, ajoutez cette ligne :

$GLOBALS[‘softaculous_conf’][‘custom_fields’]

Ajoutez le nombre de champs que vous voulez ajouter dans ce tableau. La clé du tableau sera le nom du champ dans le fichier install.xml du script.

Par exemple: si vous souhaitez ajouter le champ Nom du site pour WordPress

Ensuite, ajoutez le nombre de champs que vous souhaitez ajouter dans cette ligne. La clé sera le nom du champ dans le fichier install.xml du fichier script.

Si vous désirez par exemple ajouter le champ du Nom du site pour WordPress

  1. Allez dans /var/softaculous/wp/install.xml
  2. Recherchez le champ du nom du site pour vous obtenir le code <input type=”text” name=”site_name” size=”30″ value=”Mon Blog”> </input>
  3. La clé de  $GLOBALS[‘softaculous_conf’][‘custom_fields’] sera le nom de la balise d’entrée, c’est-à-dire site_name.
  4. La valeur du $GLOBALS[‘softaculous_conf’][‘custom_fields’] sera le nom du champ personnalisé que vous avez fourni dans la configuration du produit WHMCS. Dans le cas présent, Site Name.
  5. La configuration du champ supplémentaire est maintenant terminée.
Ajout de champs personnalisés dans WHMCS

Temps d’exécution du module de configuration

Softaculous Hook s’exécutera et tentera d’installer automatiquement le script uniquement lors de la création du compte. 

Cette option peut être trouvée lors de l’édition du produit / service dans l’onglet « Paramètres du module ». Vous pouvez choisir l’une des options de l’image ci-dessous. Rappelez-vous simplement que Softaculous créera le compte uniquement selon la méthode sélectionnée.

Temps d'exécution du module de configuration

Une fois que vous avez terminé avec les quatre champs, cliquez sur le bouton « Enregistrer les modifications ». Voilà ! Vous avez terminé.

Comment tester la configuration ?

Vous pouvez tester la configuration en créant une commande Fictive (DUMMY) et en accédant aux paramètres de cette commande.

À des fins de débogage, chargez softaculous_debug.php dans le répertoire /chemin/vers/whmcs/includes/hooks/Directory

Si vous ne téléchargez pas le fichier softaculous_debug.php, aucun message d’erreur ne sera affiché.

Éditer une commande dans WHMCS

La création d’un compte

  1. Assurez-vous que le nom et le passe administrateur sont configurés et que le script souhaité est sélectionné, par exemple WordPress.
Création modification d'un compte dans WHMCS
  1. Cliquez ensuite sur le bouton « Créer » pour créer le compte sur le serveur. Vous verrez une boîte montrée dans l’image suivante:
Confirmation création de compte dans WHMCS

Message de notification de réussite

Lorsque la page se recharge (en supposant que le débogage soit activé), le message suivant s’affiche en cas de succès: 

Message réussite création de compte dans WHMCS

Message de notification d’erreur

Toutefois, les erreurs en cas d’échec seront affichées comme suit (en supposant que le débogage soit activé) :

Message d'erreur lors de le la création d'un compte WHMCS

Plusieurs facteurs peuvent empêcher le fonctionnement du Hook:

  • Un pare-feu bloque les requêtes
  • Les noms de champs sont incorrects
  • Le cURL est désactivé dans PHP
  • D’autres raisons peuvent également en être les causes.

Suppression du fichier de débogage

Après avoir correctement configuré le module, supprimez le fichier softaculous_debug.php.

Configurer les scripts personnalisés

Si vous avez créé un script personnalisé dans Softaculous et souhaitez activer l’installation automatique de ce script via WHMCS, veuillez télécharger le fichier softaculous_extra.php également dans le dossier « Hook ».

Avant de télécharger le fichier softaculous_extra.php, veuillez le modifier et ajouter les scripts au tableau $add_softaculous_scripts correspondant au script que vous souhaitez automatiser.

Veuillez noter que l’ID du script personnalisé doit être identique à celui du script personnalisé dans le panneau d’administration Softaculous.

Créer des mots de passe et des noms d’utilisateurs aléatoires

Si vous avez besoin d’une chaîne aléatoire pour le nom d’utilisateur ou le mot de passe, vous pouvez simplement supprimer le champ « Utilisateur administrateur » ou « Mot de passe administrateur » du panneau d’administration WHMCS -> Configuration -> Produits / Services -> Champs personnalisés

Si les valeurs nom d’utilisateur ou mot de passe ne sont pas transmises lors de la création du module, Softaculous générera une chaîne aléatoire de 12 caractères avec au moins un caractère majuscule, un caractère spécial et un entier.

Les informations nécessaires pour se connecter au compte seront envoyées au client par email.

Personnalisation de la longueur de mot de passe aléatoire

Si vous souhaitez définir une longueur personnalisée pour une chaîne aléatoire pour un mot de passe administrateur, afin de renforcer le mot de passe, vous pouvez spécifier la longueur dans softaculous_extra.php.

 Ajoutez cette ligne de code :

$GLOBALS['softaculous_conf']['rand_pass_length'] = 15;

Comment écraser les fichiers ?

Si vous voyez une erreur indiquant que les fichiers existent déjà et que vous souhaitez écraser et remplacer les fichiers, remplacez la valeur de la variable suivante dans softaculous_extra.php par 1.

$GLOBALS['softaculous_conf']['overwrite_existing'] = 1;

Les fichiers existants seront écrasés et l’installation du script sera terminée sans erreur.

Le répertoire « User Mod »

Afin d’effectuer l’installation du script avec le répertoire User Mod, c’est-à-dire installer un script sur http: //IP/~USER/ au lieu du domaine, changez la valeur de la variable suivante en 1 dans le fichier softaculous_extra.php.

$GLOBALS['softaculous_conf']['user_mod_dir'] = 0;

En

$GLOBALS['softaculous_conf']['user_mod_dir'] = 1;

Remarque : L’activation de l’option Use User Mod Dir à partir du panneau Admin Softaculous sur le serveur est obligatoire pour l’utilisation de cette fonctionnalité.

Comment spécifier le script à installer ?

Si vous voulez spécifier le script à installer, sans que l’utilisateur puisse le faire librement, il faut ajouter le code suivant dans softaculous_extra.php : 

$GLOBALS['softaculous_conf']['custom_fields']['Script'] = 'WordPress';

Vous pouvez fournir le script de n’importe quel script. Vous pouvez trouver le nom du script dans le répertoire /chemin/vers/softaculous/enduser/scripts.php.

C’est tout! Maintenant, lorsque le compte d’utilisateur est créé, WordPress sera installé automatiquement. Vous pouvez également supprimer le script de champ personnalisé (que nous avons créé ci-dessus).

Les scripts spécifiques à installer pour des produits WHMCS spécifiques, comment les spécifier ?

Si vous possédez plusieurs produits et souhaitez installer différents scripts pour différents produits WHMCS sans que l’utilisateur ait à choisir le script, vous pouvez spécifier le même en utilisant les variables décrites ci-dessous.

$GLOBALS['softaculous_conf']['install']['pid'][1] = 'WordPress'; // 1 est le PID et WordPress est le script que nous voulons installer
$GLOBALS['softaculous_conf']['install']['pid'][2] = 'Joomla'; // 2 est le PID et Joomla est le script que nous voulons installer

Dans les exemples ci-dessous, nous avons installé WordPress pour toutes les commandes créées pour le produit WHMCS avec le PID 1, ainsi que Joomla pour toutes les commandes créées pour le produit WHMCS avec le PID 2.

Comment spécifier des valeurs par défaut pour les champs personnalisés ? 

Si vous souhaitez spécifier les valeurs par défaut pour des champs personnalisés tels que nom d’utilisateur ou répertoire, etc., ajoutez simplement le code suivant au fichier softaculous_extra.php.

$GLOBALS['softaculous_conf']['defaults']['admin_username'] = 'admin';
$GLOBALS['softaculous_conf']['defaults']['softdirectory'] = 'test';

De même, vous pouvez définir les valeurs par défaut pour tout autre champ personnalisé.

C’est tout! Maintenant, lorsque le compte d’utilisateur est créé, le nom d’utilisateur de l’administrateur sera admin et le script sera installé dans le répertoire de test.

Vous pouvez également supprimer les champs personnalisés Nom de l’administrateur et répertoire (créés plus haut).

Comment spécifier les identifiants (IDs) de produit WHMCS ?

Vous pouvez spécifier les identifiants de produit pour lesquels vous voulez que le module soit exécuté. Ajoutez simplement le code suivant au fichier softaculous_extra.php.

$GLOBALS['softaculous_conf']['pid'] = array(1, 2);

Remarque : la valeur ci-dessus doit être un array. Si vous souhaitez que le hook soit exécuté pour un seul produit, vous pouvez le transmettre comme suit: 

$GLOBALS['softaculous_conf']['pid'] = array(1);

Comment activer le lien de la barre latérale Softaculous dans la zone client ?

Vous pouvez activer le lien Softaculous dans la barre latérale gauche de la zone cliente WHMCS, ajoutez le code suivant au fichier softaculous_extra.php.

$GLOBALS['softaculous_conf']['softaculous_sidebar_link'] = 1; 

Pour activer le lien Softaculous dans la barre latérale de la zone client, définissez-le sur 1.

Une fois cela effectué, vous pourrez voir le lien Softaculous.

Comment ajouter la barre latérale de WHMCS

Le débogage

Si le module ne fonctionne pas et que vous souhaitez effectuer un débogage, veuillez télécharger le fichier softaculous_debug.php dans le répertoire /chemin/vers/whmcs/includes/hooks/, puis tester de nouveau le module.

Ceci enregistrera le message d’erreur dans le panneau d’administration WHMCS  — > Utilities -> Logs -> Activity Logs.

Jacques Tremblay
Suivez moi
Les derniers articles par Jacques Tremblay (tout voir)

Check Also

Installation et configuration de base de WHMCS

Installation WHMCS et configuration de base

Mis à jours 21 juillet 2024 WHMCS (Web Host Manager Complete Solution) est un outil …