Скины для конкретных страниц в MediaWiki?
Есть ли способ принудительно применить определенный скин при отображении определенных статей MediaWiki?
В моей вики многие статьи будут иметь "перевернутую" версию с альтернативным содержанием (подумайте о "хороших" и "злых" взглядах на одну и ту же тему). Я думал об использовании пространств имен для разделения этих версий, но мне нужен определенный способ их визуального сопоставления.
3 answers
Отключите настройки скина для каждого пользователя с помощью
$wgHiddenPrefs[] = 'skin';
Затем установите $wgDefaultSkin
динамически.
Существует расширение skinperpage, которое служит именно этой цели: для принудительного использования определенного скина на данной странице.
Короче говоря:
(1) Загрузите расширение, распакуйте файлы в /wiki-folder/extensions/
(2) Добавьте wfLoadExtension( 'SkinPerPage' );
инструкцию к вашему LocalSettings.php
(3) Добавьте тег <skin>skin-name</skin>
на страницу, на которой вам нужно отобразить скин, отличный от используемого по умолчанию.
Сладкий:)
Протестировано на совершенно новой версии MediaWiki 1.30.0.
Я не уверен, но я считаю, что предпочтение кожи - это единственный способ. Если вы знаете, как файлы cookie могут быть хорошей идеей для оформления конкретных страниц, но для этого потребуется довольно много настроек.