Voici un petit tutorial sur la création d'une prémod de a à z
Avant tout, il faut se demander si ça prémods pourra être utile à d'autres, si certain mods sont très simple à installé et n'apporte pas beaucoup de chose : mieux vaux les installer plus tard !
Les différentes étapes de la création proprement dites.
Choisir une liste des mods Demander l'accord aux différents auteurs Faire de même avec les thèmes Prendre la dernière version de ceux-ci (thèmes et mods) et en faire un liste claire avec :
Dans se même fichier on notera la version de fsb utilisée et si adaptation de certain mods ou autre effectué le dire
Installer en local ou en ligne un forum Installer les différents mods Noter les requête cache et sql effectué Si des modifications aux thèmes sont effectués il est bien de le noté afin de pouvoir adapté un thèmes et de préférence les triés par fichiers modifié Tester la prémods
Une fois les bugs éventuel éliminé : On va créer une installation automatique ! Prenez la liste de requête sql et cache
Commençons par les mettre sous la bonne forme. Pour chaque requête différentes :
$R_CACHE[] = '';
Entre les ' ' vous devez mettre votre requête si des ”'” sont utilisé vous devez mettre un \ devant afin d'obtenir \' pour évité des problèmes.
Ensuite, créer un dossier “premods_schemas” dans “install/” Créer un fichier “requetes_cache.php” dans “install/premods_schemas/” Voici à quoi doit ressembler votre fichier :
< ?php $R_CACHE = array(); // Vos requête ici⦠?>
Sauver le fichier
Il faut avant tout les trier par sorte, d'un coté les requête de type structure et de l'autre celle de type données. Le type structure ressemble à ceci :
CREATE TABLE `fsb_bannis` ( `bannis_id` int(11) NOT NULL AUTO_INCREMENT, `bannis_objet` varchar(50) NOT NULL DEFAULT '', `bannis_type` tinyint(4) NOT NULL DEFAULT '0', PRIMARY KEY (`bannis_id`) ) TYPE=MyISAM
Ou encore
ALTER TABLE `fsb_message_lus` ADD INDEX(`sujet_id`);
Il y a toujours CREATE TABLE ou un ALTER TABLE
Le type donnée ressemble à ceci :
INSERT INTO fsb_membres (membre_id, membre_login, membre_aut, membre_actif, code_activation) VALUES (0, 'Invite', -1, 1, 'aucun')
Il y a toujours un INSERT INTO ou un UPDATE TABLE.
Une fois la séparation effectuée il faut maintenant les adapter pour pouvoir être utilisée à l'installation.
Commençons par créer deux fichiers qui porteront le nom de “LABASEDEDONNEE_structure.php” et “LABASEDEDONNEE_donnees.php” si vous utilisé mysql : “mysql_structure.php” et “mysql_donnees.php” que vous placerez dans “install/ premods_schemas/”
Dans chaque requête il faut vérifié que s'il existe des ” il soit remplacer par des \” afin d'éviter des problèmes. Enfin remplacer les noms des tables par la constante associée (tout se trouve dans includes/constate.php) :
Par après, pour chaque requête de structure vous devrez les mettre dans se format :
$STRUCTURE[] = "CREATE TABLE `" . BANNIS_TABLE . "` ( `bannis_id` int(11) NOT NULL auto_increment, `bannis_objet` varchar(50) NOT NULL default '', `bannis_type` tinyint(4) NOT NULL default '0', PRIMARY KEY (`bannis_id`) ) TYPE=MyISAM; ";
Et pour chaque requête de données :
$DONNEES[] = "INSERT INTO " . MEMBRES_TABLE . " (membre_id, membre_login, membre_aut, membre_actif, code_activation) VALUES (0, 'Invite', -1, 1, 'aucun');";
Maintenant on copie le code dans “LABASEDEDONNEE_structure.php” pour la structure et “LABASEDEDONNEE_donnees.php” pour les données Pour obtenir : Structure :
<?php $STRUCTURE = array(); // vos requêtes structure ?>
Données :
<?php $DONNEES = array(); // vos requêtes données ?>
Enregistrer les deux fichiers
Passons au fichiers installation proprement dit. Ouvrez “install/installation.php” et chercher :
if ( $installation_finie ) { $tpl->assign_vars( array( 'L_SUCCES' => $langue['install_sucess'], 'L_FIN_INSTALL' => sprintf($langue['install_fin'], $login, $mdp, '<a href="' . $racine . 'index.php' . '">', '</a>'), 'L_CONFIG' => ( ! $config_ecrit ) ? '<br /><br />' . $langue['config_ecrit'] . '<br /><br />' . nl2br(htmlSpecialChars($cf_var)) . '<br /> ' : '' ));
et remplacer par
$langue['install_fin'] = 'Félicitations, le forum a été installé avec succès. Vous pouvez vous connecter avec votre pseudo (<strong>%s</strong>) et votre mot de passe (<strong>%s</strong>) pour administrer votre forum.<br /><br /><span class="b">%sCliquez ici pour exécuté les requête propre à la prémods%s</span>'; $tpl->assign_vars( array( 'L_SUCCES' => $langue['install_sucess'], 'L_FIN_INSTALL' => sprintf($langue['install_fin'], $login, $mdp, '<a href="' . $racine . 'install/maj.php?l=' . $login . '&p=' .$mdp . '">', '</a>'), 'L_CONFIG' => ( ! $config_ecrit ) ? '<br /><br />' . $langue['config_ecrit'] . '<br /><br />' . nl2br(htmlSpecialChars($cf_var)) . '<br /> ' : '' ));
Ensuite mettez ces fichiers (Télécharger) dans le dossier “install/” Si des gens désirent mettre à jour un forum de base qui existe déjà il leur suffit d'aller dans “install/maj.php”
Il ne vous reste plus que à supprimer les fichiers cache qui ne sont pas dans l'installation de base. Et c'est fini!
Petit plus : Vous pouvez indiquez le nom de votre votre prémods ainsi qu'un lien vers votre site en bas du forum dans le footer, pour cela : Ouvrir includes/footer_forum.php Chercher
'NB_REQUETE' => sprintf($langue['page_nb_requete'], $bdd->nb_requete)
Remplacer par
'NB_REQUETE' => sprintf($langue['page_nb_requete'], $bdd->nb_requete) . $premods_links
Ouvrir admin/footer_admin.php Chercher
'NB_REQUETE' => sprintf($langue['page_nb_requete'], $bdd->nb_requete)
Remplacer par
'NB_REQUETE' => sprintf($langue['page_nb_requete'], $bdd->nb_requete) . $premods_links
Ouvrir includes/variables_generales.php Chercher
?>
Avant ajouter
$premods_links = '<br /><b>Prémods NOMDEVOTREPREMOD by <a href="URLDEVOTRESITE" target="_blank" >VOTREPSEUDO</a></b>' ;
N'oubliez pas de mettre à jour votre prémods, de suivre les mises à jour des mods qui existe et de la faire partager.