Je suis en train de mettre en place un tas de mediawiki différents sur une base de code. Jusqu'à présent, la plupart fonctionnent, mais je veux utiliser une page principale qui semble différente du reste des pages. Pour ce faire, je l'origine juste ajouté quelques règles CSS qui n'appliqués à la classe main_page:Skin personnalisé par MediaWiki: vérifiez si la page en cours est la page principale
body .page-Main_Page { <rules> }
Le problème est que dans d'autres langues, la page principale est appelée différemment (et les changements de classe en conséquence), donc je soit avoir ajouter des règles CSS pour tous les titres de pages principaux possibles (ne va pas arriver) ou faire une vérification dans l'habillage qui ajoute une classe au corps si la page en cours est la page principale.
Malheureusement, il n'y a aucun moyen de vérifier cela. La plupart des solutions que j'ai googlé sont basées sur 'Main Page' ou en définissant votre propre titre. Je veux que la peau détecte le titre automatiquement.
La seule solution est de pensée Ive jusqu'à prendre la variable mediawiki's pour la principale URL de la page et le comparer au titre de la page courante:
$mainurl = $this->data['nav_urls']['mainpage']['href'];
$ismain = $this->data['thispage'] == substr($mainurl,'6');
(le [ « href »] commence par/wiki /, d'où le décalage de 6)
et plus tard
<body class="<?php echo ($ismain ? 'mainpage' : ''); ?>">
(et quelques autres classes de cours, mais vous voyez l'idée)
Mais cela me pose un autre problème. En espagnol, la page s'appelle Página Principal. Les données ['thispage'] n'ont pas de problèmes avec ça, mais le '' href '' est enregistré sous/wiki/P% C3% A1gina_Principal
Alors ... quelqu'un peut-il me dire comment 1. recherche la traduction de 'Main Page' dans la langue qui est actuellement utilisée OU 2. convertir P% C3% A1gina_Principal en Página Principal (et similaires pour d'autres langues) OU 3. montrez-moi une autre façon de vérifier si je suis sur la page principale?
booléenne Eh oui, je y a été. Souvent, après avoir posté une question, la réponse "apparaît".Bien, vous avez également posté la réponse, merci. (Ne pas oublier de l'accepter.) – Wikis
merci pour le rappel: D –