C'est une question souvent posée sur le forum : Comment faire du multiblog avec Dotclear 2? Il y a pour ça, la documentation très bien détaillée qui explique la marche à suivre. Le problème
est qu'avec cette documentation, vous aurez des URLs du type :
- http://domain.com/blog1/
- http://domain.com/blog2/
- ...
Mais comment faire si vous voulez que tout votre domaine, sous-domaines compris, soient gérés par Dotclear? Le tout en quelques clics et sans rien rajouter (dossier ou fichier) à chaque création?
Sachez déjà que c'est possible puisque c'est en place ici. Tout mon domaine, ce blog plus le www est géré par Dotclear 2. Je vais même vous expliquer comment arriver à ce résultat
#1 : L'hébergement
Il vous faut à la base un hébergement. Libre à vous de choisir celui que vous voulez. J'ai personnellement une préférence pour OVH mais ça ne tient qu'à moi. Sachez tout de même qu'il existe une liste d'hébergeurs compatibles avec Dotclear 2 ainsi que la marche à suivre pour l'installer chez chacun d'entre eux.
#2 : L'installation
Pas grand chose à dire de ce coté là. Installez Dotclear 2 en suivant la documentation clean-install
pour monoblog et à la racine de votre espace donc dans le dossier racine de votre hébergement. Respectez ces instructions, c'est très important pour la suite.
#3 : La magie
Vous avez installé Dotclear en monoblog. Comment en faire du multiblog? Très simple Si vous avez bien suivi jusque là, votre arborescence devrait être de la forme suivante :
+ root |- dotclear |- plugins |- themes |- public |- index.php
- dotclear doit contenir tous les fichiers de Dotclear
- plugins recevra tous les nouveaux plugins que vous allez installer par la suite
- themes recevra tous les nouveaux thèmes que vous allez installer par la suite
- public recevra tous les fichiers que vous allez mettre à disposition
Le point d'entrée général va donc être le fichier index.php. C'est lui qui va router
ou plutôt dire quel ID de blog utiliser suivant l'URL qui sera rentrée. Mais pour que cela marche, il faut préciser quelques points :
- Lorsque vous allez créer un sous domaine, faites le pointer vers le dossier racine de votre installation [1]
- Créez ensuite un blog dont l'identifiant est le sous-domaine. Par exemple pour http://www.example.com, l'id du blog devra être www ; Pour http://blog.example.com, l'id du blog devra être blog
- Remplacer le contenu du fichier index.php à la racine par le code ci-après :
<?php $url = parse_url($_SERVER['HTTP_HOST']); define('DC_BLOG_ID',str_replace('.example.com','',$url['path'])); # identifiant du blog require dirname(__FILE__).'/dotclear/inc/public/prepend.php'; # chemin vers prepend.php ?>
Pensez bien à remplacez .example.com
par votre domaine.
Il ne vous reste plus qu'à régler correctement les chemins vers les plugins / thèmes et public comme il suit :
- public_path : ../public
- public_url: /public
- themes_path : ../themes
- themes_url: /themes
et de modifier dans le config.php le chemin pour les plugins comme s'est indiqué dans la documentation clean-install
. Notez qu'avec cette configuration, tous les blogs se partageront les medias. Si vous ne souhaitez pas ce comportement, il suffit simplement de créer des dossiers public spécifiques pour chaque blog.
Et voilà, c'est prêt! Chaque sous-domaine pointera vers ce fichier index.php qui se chargera d'indiquer l'id du blog correspondant. Dorénavant, il vous suffira de simplement créer un sous-domaine et un blog. Aucun autre fichier ni dossier en vue, tout se fait tout seul
.
Merci Dotclear fr/i/189/1892263/gerer-domaine-avec-dotclear-2-L-1.jpeg" alt="Gérer tout son domaine avec Dotclear 2" title="Gérer tout son domaine avec Dotclear 2" />