MediaWiki/FAQ
MediaWiki/FAQ
Содержание
- 1 Методика обновления кодировки Backwards-compatible UTF-8 ->MySQL 4.1/5.0 UTF-8
- 2 Как разрешить закачку файлов в других форматах
- 3 Почему под OS/2 (eComStation) не работает закачка файлов
- 4 Как добавить мини-иконку (favicon)
- 5 Как изменить лого в левом верхнем углу
- 6 Как запретить незарегистрированным участникам редактировать статьи
- 7 Как сделать перенаправление для категории
- 8 Как удалить статью с «недопустимыми символами» в названии
- 9 Как совместить внутренний и внешний поиск
- 10 Как использовать ссылку на поиск гугля на произвольной странице
- 11 Как сделать оглавление без номеров
- 12 Как сделать чтобы цвет фона таблицы совпадал с цветом фона страницы
- 13 Как администратору создать нового пользователя
- 14 Ссылки
Методика обновления кодировки Backwards-compatible UTF-8 ->MySQL 4.1/5.0 UTF-8
- MediaWiki 1.6.10
- Mysql 5.0.45
- сохраняем все в sql -файл то есть делаем mysqldump --default-character-set=latin1 имя_базы >файло.sql это файло.sql содержит политически правильный и единственно верный utf8 без всяких извращений.
- редактируем файло.sql чем можем…(не вордом конечно) и меняем charset latin1 на charset utf8
- убеждаемся, что сделали именно mysqldump --default-character-set=latin1, а не экспрот в sql из phpMyAdmin’а (иначе плакали ваши
денюжкирусские названия-линки статей) - .# заходим в phpMyAdmin (необязательно, но там лучше видно), дропаем (убиваем) имя_базы, создаем базу заново, при этом выбираем utf8_bin collation. И делаем import из файло.sql
Чтобы убедится, что utf8 заработал — идем в основную таблицу page и смотрим на первую запись. Должны увидеть текст «Заглавная страница» вместо непоймичего
- Идем в LocalSettings.php и меняем false на true
# Experimental charset support for MySQL 4.1/5.0. ##$wgDBmysql5 = false; $wgDBmysql5 = true;
Как разрешить закачку файлов в других форматах
В LocalSettings.php добавляем:
:$wgFileExtensions[] = 'pdf';
для одного формата или
:$wgFileExtensions = array( 'png', 'gif', 'jpg', 'jpeg', 'pdf', 'txt' );
для того, чтобы разрешить несколько дополнительных форматов.
Почему под OS/2 (eComStation) не работает закачка файлов
Пишет при попытке загрузить файл "Невозможно создать директорию «temp/b/be» или «Невозможно создать директорию „public/b/be“». При исследовании вопроса выясняется, что порт php не может создать каталог вида «F:\wiki/images/b/be»
Причина в файле \includes\GlobalFunctions.php, функция wfMkdirParents. Замените её на
function wfMkdirParents( $fullDir, $mode = null, $caller = null ) { global $wgDirectoryMode; if ( !is_null( $caller ) ) { wfDebug( "$caller: called wfMkdirParents($dir)" ); } if( strval( $fullDir ) === '' || file_exists( $fullDir ) ) return true; if ( is_null( $mode ) ) $mode = $wgDirectoryMode; # Go back through the paths to find the first directory that exists $currentDir = $fullDir; $createList = array(); while ( strval( $currentDir ) !== '' && !file_exists( $currentDir ) ) { # Strip trailing slashes $currentDir = rtrim( $currentDir, '/\\' ); # Add to create list $createList[] = $currentDir; # Find next delimiter searching from the end $p = max( strrpos( $currentDir, '/' ), strrpos( $currentDir, '\\' ) ); if ( $p === false ) { $currentDir = false; } else { $currentDir = substr( $currentDir, 0, $p ); } } if ( count( $createList ) == 0 ) { # Directory specified already exists return true; } elseif ( $currentDir === false ) { # Went all the way back to root and it apparently doesn't exist wfDebugLog( 'mkdir', "Root doesn't exist?\n" ); return false; } # Now go forward creating directories $createList = array_reverse( $createList ); # Is the parent directory writable? if ( $currentDir === '' ) { $currentDir = '/'; } if ( !is_writable( $currentDir ) ) { wfDebugLog( 'mkdir', "Not writable: $currentDir\n" ); return false; } foreach ( $createList as $dir ) { # use chmod to override the umask, as suggested by the PHP manual if ( !mkdir( $dir, $mode ) || !chmod( $dir, $mode ) ) { wfDebugLog( 'mkdir', "Unable to create directory $dir\n" ); return false; } } return true; }
Как добавить мини-иконку (favicon)
В LocalSettings.php добавляем:
#минииконка $wgFavicon="/favicon.ico";
Как изменить лого в левом верхнем углу
#лого в левом вехнем углу $wgLogo = "/images/logo.png";
Как запретить незарегистрированным участникам редактировать статьи
$wgEmailConfirmToEdit=true;
Просмотр по-прежнему возможен, кнопка «править» показывается, однако при попытке редактирования появится напоминание о необходимости подтвердить регистрацию.
Как сделать перенаправление для категории
Q: хочется одну категорию перенаправить на другую категорию (скажем, в статье вставляем категорию с коротким названием: «МСЭ», а редирект делаем на статью с длинным названием: «Источники:Малая советская энциклопедия»). Если в категорию «МСЭ» поставить
#redirect [[Категория:Источники:Малая советская энциклопедия]]
или
#redirect [[:Категория:Источники:Малая советская энциклопедия]]
то не один из вариантов не работает.
A: Обломись бабка. Это похоже уже фича. См. Template talk:Category redirect. Было обещано, что разработчики исправят, но пошел уже третий год…
Как удалить статью с «недопустимыми символами» в названии
Q: Создал статью с обратным слешем в названии (например, Тест \" тест \" — Нмб Тест \" тест \"), при попытке просмотра просмотра веб-сервер выдает ошибку 404 «Not Found. The requested URL /index.php/Тест_\»_тест_\" was not found on this server." Как мне удалить эту страницу ?
A: Данный вопрос может возникнуть в случае использования на сервере операционных систем Windows или OS/2
Берем полный URL
http://wiki.laser.ru/index.php/%D0%A2%D0%B5%D1%81%D1%82_%5C%22_%D1%82%D0%B5%D1%81%D1%82_%5C%22
Добавляем после «index.php» текст ?title= (не забыть удалить / !), а в конец URL’ла — &action=delete
http://wiki.laser.ru/index.php?title=%D0%A2%D0%B5%D1%81%D1%82_%5C%22_%D1%82%D0%B5%D1%81%D1%82_%5C%22&action=delete
Как совместить внутренний и внешний поиск
Q: Как совместить внутренний и внешний поиск, так, как это сделано в Википедии ?
A: В Википедии это сделано через использование javascript — скриптов MediaWiki:Search.js и MediaWiki:Common.js (в ЭНЭ — MediaWiki:Search.js и MediaWiki:Common.js). Следовательно, нужно, во-первых, разрешить использование javascript в браузере, во-вторых, создать Search.js, и в-третьих, отредактировать Common.js средствами MediaWiki.
В частности, в MediaWiki:Common.js следует добавить следующие строки:
//External search if (wgCanonicalNamespace == 'Special' && wgCanonicalSpecialPageName == 'Search') importScript('MediaWiki:Search.js')
Как использовать ссылку на поиск гугля на произвольной странице
Q: Как использовать ссылку на поиск гугля на произвольной странице ?
А1 Вот так: пишем [[google:Собака]], получаем: google:Собака.
A2: установить расширение MediaWiki Extension:Google Custom Search Engine, после чего пишем:<Googlecoop></Googlecoop>, получаем
Как сделать оглавление без номеров
Q: Как сделать оглавление страницы (Table of contents) без номеров ? При викификации стандартов, законов и других документов в оглавлении появлется некрасивое дублирование.
А: Использовать класс nonumtoc.
В тело статьи добавляем конструкцию
- <div class="nonumtoc">__TOC__</div>
а в MediaWiki:Common.css —
/* When <div class="nonumtoc"> is used on the table of contents, the ToC will display without numbers */ .nonumtoc .tocnumber { display:none; } .nonumtoc #toc ul, .nonumtoc .toc ul { line-height: 1.5em; list-style: none; margin: .3em 0 0; padding: 0; } .nonumtoc #toc ul ul, .nonumtoc .toc ul ul { margin: 0 0 0 2em; }
Пример применения — смотри статью Лазерная безопасность.
Как сделать чтобы цвет фона таблицы совпадал с цветом фона страницы
Q: Как сделать чтобы цвет фона таблицы совпадал с цветом фона страницы ? Вопрос актуален для, например, пространства ЭНЭ ({{SITENAME}}), где для стандарного скина используется слегка голубоватый фон, в то время как для основного пространства фон белый. Таблицы с параметром border=0 обычно используются для форматирования текста с изображениями. Результат такого использования таблиц в пространстве {{SITENAME}} при несовпадении фонов страницы и таблицы получается отвратительным.
А: <Simetrical> {| style="background: transparent"
Примечание:Simetrical — имя пользователя на irc-канале #mediawiki
Как администратору создать нового пользователя
Q: Как администратору создать нового пользователя ?
А1: залогинившись администратором, зайти на специальную страницу Special:Userlogin/signup.
А2: нажать мышкой на Спецстраницы, найти раздел Представиться / Зарегистрироваться, нажать на Представиться или зарегистрироваться, увидеть текст «Нет учётной записи? Создайте учётную запись.» и перейти по ссылке «Создайте учётную запись» на Special:Userlogin/signup.
Ссылки
- Manual:FAQ (англ.) MediaWiki FAQ
- Часто задаваемые вопросы (FAQ) о MediaWiki. (русск.) MediaWiki FAQ на русском языке
- Ответы на вопросы читателей (русск.) MediaWiki FAQ на русском языке в Викиреальности.