Я настраиваю кучу разных языковых медиа-вики на одной кодовой базе.Пока что большая часть этого работает, но я хочу использовать главную страницу, которая выглядит иначе, чем остальные страницы.Для этого я просто добавил несколько правил CSS, которые применяются только к классу main_page:
body .page-Main_Page { <rules> }
Проблема в том, что в других языках главная страница вызывается по-разному (и класс изменяется соответственно), поэтому ялибо нужно добавить правила CSS для всех возможных заголовков главной страницы (этого не произойдет), либо выполнить проверку внутри скина, которая добавляет класс в тело, если текущая страница является главной страницей.
К сожалению, нетспособ проверить это.Большинство решений, которые я нашел, основаны либо на «Главной странице», либо на настройке вашего собственного названия.Я хочу, чтобы скин автоматически определял заголовок.
Единственное решение, о котором я до сих пор думал, это взять переменную mediawiki для URL главной страницы и сравнить ее с заголовком текущей страницы:
$mainurl = $this->data['nav_urls']['mainpage']['href'];
$ismain = $this->data['thispage'] == substr($mainurl,'6');
(['href'] начинается с / wiki /, следовательно, смещение 6)
и позже
<body class="<?php echo ($ismain ? 'mainpage' : ''); ?>">
(и некоторые другие классы, конечно, ноВы поняли)
Но это дает мне еще одну проблему.На испанском языке эта страница называется Página Principal.У данных ['thispage'] с этим проблем нет, но ['href'] сохраняется как / wiki / P% C3% A1gina_Principal
Так что ... кто-нибудь может сказать мне, как 1.ищите перевод 'Main Page' на языке, который используется в настоящее время ИЛИ 2. конвертируйте P% C3% A1gina_Principal в Página Principal (и т.п. для других языков) ИЛИ 3. покажите мне другой способ проверить, нахожусь ли я наглавная страница?