Расширение MediaWiki

редактировать

Расширения MediaWiki позволяют сделать MediaWiki более продвинутой и полезной для различных целей. Эти расширения сильно различаются по сложности. Фонд Викимедиа управляет сервером Git, на котором размещено множество расширений, и их каталог можно найти на веб-сайте MediaWiki. Некоторые другие сайты также известны разработкой или поддержкой расширений: MediaWiki.org, который поддерживает матрицу расширений; и Google Code. Сама проверка кода MediaWiki осуществляется с помощью экземпляра Gerrit. Начиная с версии 1.16 MediaWiki также использовала библиотеку jQuery.

СОДЕРЖАНИЕ
  • 1 Использование
  • 2 вида приставок
    • 2.1 Функции парсера
    • 2.2 Отображение академических данных и данных, относящихся к энциклопедии
    • 2.3 Интеграция
    • 2.4 Борьба со спамом
    • 2.5 Поиски, запросы, обработка и агрегирование данных
  • 3 ссылки
использование

Человек с административным доступом к вики-каталогам по FTP или файловой системе может устанавливать расширения вручную, загружая их в соответствующие каталоги и используя текстовый редактор, чтобы добавить строки require once в файл LocalSettings.php, чтобы код расширения был включен и оценен. Некоторые расширения также имеют параметры конфигурации, которые устанавливаются и изменяются путем редактирования этого файла. Существует также расширение Configure, которое упрощает управление другими расширениями. Улучшенная платформа управления расширениями находится в стадии разработки.

Виды пристроек

Функции парсера

Среди наиболее популярных расширений - расширение функции синтаксического анализатора, ParserFunctions, которое позволяет отображать различный контент на основе результатов условных операторов. Эти условные операторы могут выполнять такие функции, как оценка того, является ли параметр пустым, сравнение строк, оценка математических выражений и возврат одного из двух значений в зависимости от того, существует ли страница. Он был разработан как замена заведомо неэффективному шаблону под названием {{Qif}}. Шиндлер излагает историю расширения ParserFunctions следующим образом:

В 2006 году некоторые сторонники Википедии обнаружили, что посредством запутанного и сложного взаимодействия функций шаблонов и CSS они могут создавать условный вики-текст, то есть текст, который отображался, если параметр шаблона имел определенное значение. Это включало повторяющиеся вызовы шаблонов внутри шаблонов, что снижало производительность всей системы. Разработчики стояли перед выбором: либо запретить распространение явно желаемой функции, обнаружив такое использование и явно запретив его в программном обеспечении, либо предложить эффективную альтернативу. Последнее было сделано Тимом Старлингом, который объявил о введении функций синтаксического анализатора, текста вики, который вызывает функции, реализованные в базовом программном обеспечении. Сначала был реализован только условный текст и вычисление простых математических выражений, но это уже значительно увеличило возможности редакторов вики. Со временем были введены дополнительные функции синтаксического анализатора, что в конечном итоге привело к созданию инфраструктуры, которая позволила простым написанием функции расширения добавлять произвольные функции, такие как, например, службы геокодирования или виджеты. На этот раз разработчики явно реагировали на требования сообщества, будучи вынуждены либо бороться с решением проблемы, имевшейся у сообщества (то есть условным текстом), либо предлагать улучшенную техническую реализацию, чтобы заменить предыдущую практику и добиться в целом лучшего представление.

Другое расширение функций синтаксического анализатора, StringFunctions, было разработано для оценки длины строки, позиции строки и т. Д. Сообщества Викимедиа, создав неудобные обходные пути для достижения той же функциональности, потребовали, чтобы она была включена в их проекты. Большая часть его функциональных возможностей была в конечном итоге интегрирована в расширение ParserFunctions, хотя по умолчанию отключено и сопровождалось предупреждением Тима Старлинга о том, что включение строковых функций позволит пользователям «реализовывать свои собственные синтаксические анализаторы на самом уродливом и наиболее неэффективном языке программирования, известном человеку: MediaWiki. wikitext с функциями ParserFunctions. "

Отображение академических данных и данных, относящихся к энциклопедии

Еще одно очень популярное расширение - это расширение цитирования, которое позволяет добавлять сноски на страницы с помощью встроенных ссылок. Это расширение, однако, подвергалось критике за то, что оно сложное в использовании и требует от пользователя запоминания сложного синтаксиса. В качестве замены был предложен инструмент под названием ProveIt. Гаджет под названием RefToolbar также был создан, чтобы упростить создание цитат с использованием общих шаблонов. MediaWiki имеет некоторые расширения, которые хорошо подходят для академических кругов, такие как математические расширения и расширения, позволяющие визуализировать молекулы в 3D.

Интеграция

Была создана общая структура виджетов, которая позволяет MediaWiki интегрироваться практически с чем угодно. Другими примерами расширений, которые могут улучшить вики, являются расширения предложений категорий и расширения для включения Flash-видео, видео YouTube и RSS-каналов. Скоро появится расширение для интеграции с Facebook. Metavid, сайт, на котором хранятся видеозаписи заседаний Сената и Палаты представителей США, был создан с использованием кода, расширяющего MediaWiki на область совместной разработки видео. Одно расширение, Viskimap, использует графические организаторы для визуализации отношений между страницами контента, чтобы студенты могли легко понять элементы контента и их отношения при навигации по страницам вики.

Борьба со спамом

Есть много спам-ботов, которые ищут в Интернете установки MediaWiki и добавляют к ним спам-ссылки, несмотря на то, что MediaWiki использует атрибут nofollow, чтобы препятствовать таким попыткам поисковой оптимизации. Частично проблема заключается в том, что сторонние переиздатели, такие как зеркала, не могут независимо реализовывать тег nofollow на своих веб-сайтах, поэтому маркетологи могут получить преимущество PageRank, вставляя ссылки на страницы, когда эти записи появляются на сторонних веб-сайтах. Расширения защиты от спама были разработаны для решения этой проблемы путем введения CAPTCHA, занесения определенных URL-адресов в черный список и возможности массового удаления страниц, недавно добавленных конкретным пользователем.

Поиск, запросы, обработка и агрегирование данных

Форма для редактирования страницы с использованием расширения Semantic Forms, которое, в свою очередь, полагается на Semantic MediaWiki.

Слабая функциональность запросов MediaWiki, основанная в основном на текстовом поиске, вдохновила на создание расширений, добавляющих сложное новое поведение в синтаксис вики. Системы, помогающие анализировать взаимоотношения между редакторами, статьями, исправлениями, темами и словами, привлекли значительное внимание академического сообщества как с точки зрения опубликованных статей, так и с точки зрения реализованных программных проектов. Они были сочтены необходимыми для того, чтобы программное обеспечение подходило для таких приложений, как некоторые научные базы данных.

Примеры расширений, облегчающих такой анализ, включают Semantic MediaWiki, который предоставляет возможность добавлять структурированные и доступные для поиска отношения и атрибуты на вики-страницы, и WikiTrust, который реализует систему для проверки автора, происхождения и надежности вики-текста. SNPedia, NeuroLex и DBpedia проекты по этим направлениям. Платформа организации программного обеспечения, предназначенная для поддержки конкретных мероприятий по разработке программного обеспечения, таких как управление опытом, разработка требований или управление проектами, была основана на Semantic MediaWiki. Другая вики, SynBioSS Wiki, цель которой - дать возможность научному сообществу хранить и извлекать информацию, связанную с усилиями синтетической биологии, аналогичным образом стремилась преодолеть ограничения MediaWiki в этом отношении, создав поля базы данных для идентификаторов видов, сложных идентификаторов и т. Д.; новые виды и тому подобное могут быть добавлены через специальную страницу. Модифицированная поисковая система MediaWiki также была частью этого проекта. Сам SMW был расширен за счет введения типов контента, двунаправленных отношений, контролируемых словарей, удобных пользовательских интерфейсов (включая, например, автозаполнение ) и методов Web 2.0 для визуализации и опций взаимодействия.

Расширение под названием Woogle было создано в попытке объединить преимущества вики-страниц в легком и совместном сборе новой информации и поисковых систем предприятия в поиске существующих документов и информации в организации. Поскольку по умолчанию создание и изменение таблиц является ручным процессом, при этом между таблицами, которые отображают одни и те же данные по-разному, могут возникать несоответствия, было создано расширение DynaTable, чтобы предоставить пользователям вики удобный способ определения данных в отдельном пространстве имен. в результате данные хранятся в таблице базы данных и динамически извлекаются из базы данных во время синтаксического анализа или рендеринга вики-страницы на страницы, имеющие соответствующий тег (и необходимые параметры). Расширение также позволяет пользователям фильтровать таблицы, выбирая для отображения подмножество столбцов и строк.

Система на основе расширений, известная как Annoki, была разработана, чтобы помочь приписать определенные части статей конкретным авторам. Если более 50% предложения было добавлено конкретным редактором, это предложение считалось «принадлежащим» этому редактору. Если редактор добавил менее 50%, этот редактор считался корректором этого предложения. Система также рассматривала серию правок, сделанных одним и тем же автором, как непрерывное редактирование, и определила «выпуск» вики-страницы как последнюю из этих последовательных редакций.

использованная литература
Последняя правка сделана 2024-01-02 04:30:52
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте