[dc1 to dc2] Chacun son étagère
Par Kozlika le jeudi 20 novembre 2008, 20:04 - [dc1 to dc2] - Lien permanent
public : tous, avec des parties spéciales pour ceux qui souhaitent conserver leur bacasable.
Ce que nous allons faire aujourd’hui c’est séparer les fichiers qui constituent le cœur de Dotclear de ceux que nous ajouterons : des thèmes personnels, des plugins, les images, les vidéos, etc. Cette solution offre deux avantages :
- dotclear reste tel qu’à sa naissance et si on veut faire une mise à jour et que la procédure automatique ne fonctionne pas pour une raison ou une autre on n’aura que très peu de manipulations à faire
- on repère tout de suite où sont les fichiers qui vont avec tel ou tel blog.
Pour simplifier, je vais considérer que chaque blog veut utiliser ses propres thèmes et medias sans les partager avec les autres. Si vous souhaitez partager les thèmes et/ou les medias, allez lire ce tuto qui présente tous les cas de figure. D’t’façons c’est moi qui l’ai écrit aussi ;-)
On isole les plugins
Vous allez sûrement vouloir ajouter des fonctionnalités à celles qui sont offertes de base. Je vous propose de les séparer de Dotclear (j’ai toujours la facilité de mise à jour manuelle et la clarté des personnalisations en tête).
On leur crée un répertoire
Au même niveau que le répertoire de dotclear (qui s’appelle probablement dc2
si vous avez suivi la semaine dernière), on crée un répertoire nommé mes_plugins
(permissions 777).
On dit où il se trouve
Ensuite on va dire à Dotclear que lorsqu’on ajoutera des plugins c’est là qu’on veut qu’ils aillent se ranger. Pour ce faire, il faut éditer le fichier situé dans @@/dc2/inc/config.php et chercher les lignes :
//Plugins root define('DC_PLUGINS_ROOT',dirname(__FILE__).'/../plugins');
que vous remplacerez par :
// Plugins root - les plugins de base restent en place, les nouveaux vont dans /blog/plugins define('DC_PLUGINS_ROOT',dirname(__FILE__).'/../plugins'.PATH_SEPARATOR.dirname(__FILE__).'/../../mes_plugins');
Note : Cela on ne le fait qu’une fois, quel que soit le nombre de blogs. Tous les plugins autres que ceux d’origine y seront rangés.
Voilà une bonne chose de faite.
On isole les fichiers de chaque blog
Le but est le suivant : pour chaque blog, on va vouloir qu’il ait une adresse spéciale et qu’il ait son répertoire de thèmes et son répertoire d’images. On commence donc par créer un répertoire, qu’on nommera de façon pertinente. Uh ça veut dire quoi « pertinente » ?
Il faut qu’il soit sur la bonne adresse
Ça veut dire que si vous voulez qu’un blog soit sur l’url http://mondomaine.tld/bacasable on crée un répertoire nommé bacasable sur son hébergement, à côté de dc2
et de mes-plugins
. Et pour que l’adresse aboutisse sur quelque chose il faut placer dans ce répertoire un fichier nommé index.php
(permissions 755) avec ces lignes :
<?php /** * A cette adresse je veux que tu t'occupes du blog dont l'identifiant est default * Je te dis aussi que les fichiers de dotclear sont dans un repertoire qui s'appelle dc2 */ define('DC_BLOG_ID','default'); # identifiant du blog require dirname(__FILE__).'/../dc2/inc/public/prepend.php'; # chemin vers prepend.php ?>
(Je vous rapppelle que lorsque vous avez importé les billets de bacasable vous les avez importé sur le blog installé d’office, dont l’identifiant est default (vous pouvez le voir dans Paramètres du blog).
Comme vous le voyez, ce fichier est un fichier PHP. Or le PHP qu’utilise Dotclear, rappelez-vous, c’est PHP5 il faut donc ici aussi placer un fichier .htaccess
(permissions 755) pour le préciser. Vous allez donc placer dans /bacasable un fichier .htaccess
identique à celui qui se trouve dans /dc2. (Pour ceux qui ont ce fichier à la racine de leur hébergement il est inutille d’en placer un dans bacasable.)
Vala une autre bonne chose de faite.
On ajoute themes et medias
Ensuite il faut que ce répertoire contienne ses thèmes et ses images. Alors dans le répertoire bacasable
on ajoute un répertoire themes
et un répertoire public
auxquels on donnera les permissions maximales (777).
(on a presque fini !)
Je ne vous expliquerai pas aujourd’hui pourquoi pour ne pas vous gaver d’infos mais dans le répertoire themes
il faut que vous ajoutiez une copie du thème par défaut.
Qui sait à part vous que vos thèmes et vos plugins sont rangés là pour le blog bacasable
hum ? Personne, pas même dotclear, qui pour l’instant sait seulement que vous voulez récupérer le contenu du blog dont l’identifiant est default
. Disons-lui aussi où se trouvent les thèmes et pour ça il faut se rendre dans l’administration du blog puis cliquer sur le lien about:config
situé dans la rubrique Extensions du menu latéral d’administration. La page fait un peu peur mais vous pourrez dire à vos petits-enfants que vous êtes un(e) vrai(e) geek(ette) alors ça vaut le coup !
Hop hop, on file directement aux quatre lignes qui nous intéressent et on les remplit comme suit (en gras le nom du champ, en maigre ce qu’il faut y mettre) :
- public_path: ../bacasable/public
- public_url: /bacasable/public
- themes_path: ../bacasable/themes
- themes_url: /bacasable/themes
Et bien sûr on clique sur Enregistrer en bas de la page about:config
Derniers cartons
Vala tout est prêt pour que bacasable soit bien joli. Il vous suffit de transférer les medias que vous aviez sauvegardés avant de supprimer bacasable (vous vous souvenez ? le .zip) et en principe tout devrait aller comme sur des roulettes.
Alors ça donne quoi ? Moi, la première fois, il m’a fallu au moins cinq essais avant d’avoir tout bon. Et vous ?
Si vous voulez un autre blog
Vous suivez toutes les étapes que nous venons de décrire mais vous commencez par la première qui a ici été inutile puisque le blog default existait déjà :
Depuis votre interface d’administration, allez dans le menu Blogs (rubrique Système) puis choisissez « Nouveau blog ». Là vous indiquerez un identifiant (sans accents ni espaces) et une url, qui correspondra à celle que vous voulez que les gens aillent pour voir le blog. Ensuite tout se passe comme pour le bacasable : création d’un répertoire, ajout d’un fichier index.php, d’un répertoire de themes, d’un repertoire public, toussa…
Vous tentez le coup ?
Edit hi hi j’ai juste oublié un vague truc. Dans tableau de bord -> Paramètres du blog, il faut bien mettre http://mondoemaine.tld/bacasable/index.php?
Memo isoler les plugins ajoutés
- Créer un répertoire
- Ajouter son chemin dans /inc/config.php
Memo créer un blog
- Sur le FTP
- Créer un répertoire pour le nouveau blog
- Si le fichier .htaccess d’activation de PHP5 n’est pas à la racine de l’hébergement, en mettre un dans ce répertoire
- Y placer un fichier index.php (à adapter), un répertoire themes, un répertoire public
- Placer dans le répertoire themes un double du thème par défaut
- Admin (rubrique Système) -> Blogs
- Cliquer sur Nouveau blog
- Donner un identifiant sans accents ni espaces
- Indiquer l’url qu’aura le blog http://domaine.tld/repertoire/index.php? (pour une lecture des URL en query_string) ou http://domaine.tld/repertoire/index.php/ (pour une lecture des URL en path_info)
- Admin (rubrique Extensions) -> about:config
- Modifier les quatre chemins public_path, public_url, themes_path, themes_url
Commentaires
N’oubliez pas ce que Kozlika a écrit en fin de ce billet à propos des autorisations nécessaires :
Notamment… On vérifie donc (entre parenthèses je mets les permissions nécessaires) :
J’ai oublié un autre truc important : si le .htaccess d’activation de PHP5 est placé dans le répertoire de dotclear2 il faut en mettre une copie dans chaque répertoire de blog. (S’il est placé à la racine de l’hébergement ça n’est pas nécessaire.)
C’est la première fois que je fronce les sourcils de cette manière en lisant les jeudis de dc2 o_O’
Oui c’est en effet un peu indigeste et j’ai hésité à le faire en deux parties mais je pense que vous avez tous envie d’avancer dans les trucs sympas. Alors cette fois-ci on prend le temps des trucs emmerdants mais qui gagnent du temps ensuite et après on fera deux ou trois semaines de trucs plus rigolos :-)
Je n’ai pas de fichier
/dotclear2/inc.config.php
Il y a bien un fichier
/dc2/inc/config.php
, est-ce que c’est celui-là ?Sinon, il y a aussi un fichier
/dc2/inc/config.php.in
mais celui-là il ne m’autorise pas à faire edit.Et puis il y a un
.htaccess
à la racine, et puis un autre dans/dc2/inc
mais ni l’un ni l’autre ne me laisse voir ce qu’il y a dedans, alors je suis un peu confuse avec tout ça.voir ici pic
Pourquoi parler de bacasable alors qu’on est sensés être dans le répertoire dc2 ?
de plus, tu parles du rép dotclear2 alors que j’ai (nous je pense) installé dans dc2 la semaine dernière :((
je suis perdu !!!
Alors… en effet, Otir, je vais corriger mon billet c’est bien /inc/config.php qu’il faut éditer. Et tu as raison Frandon, c’est dans
dc2
et non dansdotclear2
que celui-ci se trouve, si bien qu’il faut que je corrige aussi le chemin du prepend… rho pas sérieuse la maîtresse cette semaine ! Je fais ça et je reviens pour te répondre sur ta question “bacasable” Frandon, car là par contre, je maintiens !Otir, j’oubliais, c’est la copie du .htaccess (celui qui se trouve tout en haut de ta liste sur l’image) qu’il faut placer dans /bacasable (avec Transmit on fait control-clic -> dupliquer ce fichier).
Frandon : le but de la manoeuvre d’aujourd’hui est justement de *ne plus* aller chercher les thèmes dans le répertoire de dotclear mais dans le répertoire bacasable. On y a copié un répertoire pour les thèmes et un autre pour les images et on dit dans ces quatre lignes que c’est là qu’il faut stocker/aller chercher les thèmes et les images.
j’ai compris ^^
je vais renommer bacasable en data comme ça ça sera plus parlant pour moi :D
enfin, je que je veux dire : je vais créer un répertoire data à la racine de mon site dans lequel je mettrai les rep suivants :
comme ça tout sera centralisé au même endroit (je suis monoblog)
Merci Kozlika. Je suis de plus en plus mêlée :
. Mais tu me dis de le dupliquer. Je dois ou je dois pas ? La racine ce n’est pas là où il y a lewww
?Ensuite, il
C’est tout un répertoire, ça, non ? Comment on fait une copie ? Il faut copier chaque fichier un par un dans un répertoire “default” ? Y a un autre moyen plus sûr ?pffffff chuis trop bête, t’as raison Otir. Tu peux en lire le contenu qu’on s’assure que c’est le bon ?
J’ai mis le répertoire en place en passant par mon bureau.
Et voilà l’travail ! fingers in ze noze
Mes deux grains de sel du jour :
Si vous trouvez que je complique, dites-le moi.
Pour ceux dont l’agrégateur ne mentionne pas les mises à jour, je signale que j’ai ajouté en fin de billet un p’tit memo en forme de check-list pour ne rien oublier dans la procédure.
Arrgh Kozlika, malgré quelques tentatives je n’arrive pas au multiblog… Boarf, il m’est bien plus facile et rapide d’installer autant de blog dont j’ai besoin que de passer par là. Je laisse donc tomber pour le moment :-) (je pense que je mélange le tuto de Dc Tips et les tiens).
Mmm Simon, installer un Dotclear 2 par blog c’est un peu comme racheter une voiture pour chaque trajet :-)
Reprends le tuto de la doc que je donne en lien dans ce billet et dis-nous exactement en quoi « ça ne marche pas ».