Neuf médias, neuf thèmes : pourquoi je n’ai pas mutualiséNine media sites, nine themes: why I did not share the code
Un thème commun aurait divisé la maintenance par neuf. J'ai écrit neuf thèmes distincts à la place, et voici le raisonnement qui a mené là.A shared theme would have divided maintenance by nine. I wrote nine separate themes instead, and here is the reasoning that led there.

Neuf sites éditoriaux, neuf lignes éditoriales, neuf publics. La réponse d’école est évidente : un thème commun, neuf jeux de réglages, une seule base de code à maintenir. C’est ce que j’aurais recommandé à un client. Pour ce réseau, j’ai fait l’inverse, et il faut expliquer pourquoi.Nine editorial sites, nine editorial lines, nine audiences. The textbook answer is obvious: one shared theme, nine sets of settings, a single codebase to maintain. It is what I would have recommended to a client. For this network I did the opposite, and that needs explaining.
Ce qu'un thème unique imposeWhat a single theme imposes
Un thème mutualisé mutualise aussi la mise en page, le rythme typographique, la façon de présenter un article. On peut changer les couleurs et le logo : on ne change pas la structure. Au bout de quelques mois, neuf titres ressemblent à neuf déclinaisons du même gabarit, et un lecteur qui passe de l’un à l’autre ne voit pas la différence.A shared theme also shares the layout, the typographic rhythm, the way an article is presented. You can change colours and logo: you cannot change the structure. After a few months, nine titles look like nine variants of one template, and a reader moving between them sees no difference.
Pour un réseau qui vend de la publicité contextuelle, ce n’est pas un détail cosmétique. Un annonceur achète une audience identifiée à un titre, pas une place dans un gabarit anonyme.For a network selling contextual advertising, that is not a cosmetic detail. An advertiser buys an audience attached to a title, not a slot in an anonymous template.
Ce que neuf thèmes permettentWhat nine themes allow
Chaque titre a pu recevoir une forme qui vient de son sujet. Un média de prospective technologique tourne sur fond presque noir avec un dégradé violet vers cyan, une typographie géométrique associée à un serif de lecture, et une liste éditoriale asymétrique numérotée. Un magazine d’astuces Mac part d’un papier crème, d’un serif chaleureux et d’un motif de touches de clavier. Un site consacré aux smartphones emploie une palette corail et menthe, des pastilles rondes de rubriques et un fil en mosaïque.Each title received a form that comes from its subject. A technology foresight outlet runs on a near-black background with a violet-to-cyan gradient, a geometric typeface paired with a reading serif, and a numbered asymmetric editorial list. A Mac tips magazine starts from cream paper, a warm serif and a keyboard-key motif. A smartphone site uses a coral and mint palette, round section pills and a mosaic feed.
Aucune de ces décisions ne tient dans un réglage. Elles tiennent dans la structure même des gabarits, et c’est précisément ce qu’un thème unique interdit.None of those decisions fits in a setting. They live in the structure of the templates themselves, and that is exactly what a single theme forbids.
Ce qui est réellement mutualiséWhat is genuinely shared
Pas le code de présentation : les conventions et les outils. C’est moins visible, et c’est ce qui rend l’ensemble tenable.Not the presentation code: the conventions and the tooling. That is less visible, and it is what keeps the whole thing manageable.
- Du JavaScript natif, sans aucune dépendance externe, sur les neuf sites.Vanilla JavaScript, with no external dependency, across all nine sites.
- Des polices auto-hébergées, jamais appelées chez un tiers.Self-hosted fonts, never fetched from a third party.
- Le respect de la préférence de mouvement réduit, partout.Honouring the reduced-motion preference, everywhere.
- Un plugin maison de mesure d’audience, le même sur les neuf, sans traceur tiers.An in-house audience measurement plugin, the same on all nine, with no third-party tracker.
- Une discipline de version : chaque thème porte son numéro et l’état de sa refonte en cours.Version discipline: each theme carries its number and the state of its ongoing rework.
Mutualiser les conventions coûte une discipline. Mutualiser le code coûte une identité. Sur un réseau de médias, la seconde dépense est de loin la plus chère.Sharing conventions costs discipline. Sharing code costs identity. On a media network, the second is by far the more expensive.
Le prix, et il est réelThe price, and it is real
Neuf bases de code à suivre. Une évolution de WordPress se vérifie neuf fois. Un correctif se porte neuf fois. Une bonne idée trouvée sur un site ne bénéficie aux huit autres que si je prends le temps de la reporter, et il arrive que je ne le prenne pas.Nine codebases to follow. A WordPress change is checked nine times. A fix is ported nine times. A good idea found on one site only benefits the other eight if I take the time to carry it over, and sometimes I do not.
Ce coût reste acceptable parce que les thèmes sont minces : pas de constructeur de page, pas de bibliothèque, quelques milliers de lignes chacun. Il ne le serait pas avec des thèmes de trente mille lignes, et c’est la vraie condition de ce choix.That cost stays acceptable because the themes are thin: no page builder, no library, a few thousand lines each. It would not be with thirty-thousand-line themes, and that is the real condition of this choice.
Ce que je recommanderais ailleursWhat I would recommend elsewhere
Un thème commun, dans la plupart des cas. Neuf antennes locales d’un même réseau, neuf filiales, neuf agences : l’identité y est voulue identique, et la mutualisation est évidemment gagnante. La question à poser n’est donc pas « combien de sites » mais « ces sites doivent-ils se ressembler ». Ici, la réponse était non.A shared theme, in most cases. Nine local branches of one network, nine subsidiaries, nine agencies: the identity is meant to be identical there, and sharing is obviously the winner. The question to ask is therefore not “how many sites” but “should these sites look alike”. Here, the answer was no.
Le projet derrière cette noteThe project behind this note
Tout est parti de get-regie, la régie publicitaire. La fiche détaille le contexte, ce qui a été construit et ce que le client en a tiré.It all started with get-regie, la régie publicitaire. The project page covers the context, what was built and what the client got out of it.