Help:Extension:Discourse/de

From mediawiki.org
This page is a translated version of the page Help:Extension:Discourse and the translation is 89% complete.
PD Hinweis: Wenn Du diese Seite bearbeitest, stimmst Du zu, dass Dein Beitrag unter der [CC0] veröffentlicht wird. Mehr Informationen findest du auf der Public Domain Hilfeseite. PD

The Discourse extension provides a Lua library with which to interact with an external Discourse forum. Users of the extension are expected to already be familiar with writing templates and modules.

Die Erweiterung bietet die folgenden zwei Funktionen, die die Grundfunktionalität für das Abrufen von Daten bereitstellen, die über die Discourse API verfügbar sind:

  • mw.ext.discourse.getData( site, urlPath ) — Daten von einer Discourse-Seite abrufen.
    • @param string site - Kurzname der Seite (wie vom Wiki-Systemadministrator festgelegt).
    • @param string urlPath - The URL path of a JSON endpoint. See the Discourse documentation for full details.
    • @return table - Was auch immer von der Discourse API zurückgegeben wird, oder Fehlerinformationen.
  • mw.ext.discourse.getBaseUrl( site ) — Ermittelt die Basis-URL einer bestimmten Discourse-Site. Nützlich für die Erstellung von Links in Vorlagen usw.
    • @param string site - Name der Seite.
    • @return table - With 'result' key.

The mw.ext.discourse library also provides two 'example' functions that can be used as-is or serve as the basis for a wiki's own formatting etc.

An example of a Module:Discourse that uses these could look something like the following:

local discourse = require( 'mw.ext.discourse' )

function news( frame )
    return discourse.news( frame )
end

function events( frame )
    return discourse.events( frame )
end

return {
    news = function( frame ) return news( frame ) end;
    events = function( frame ) return events( frame ) end;
}

Dies könnte dann in einer Vorlage mit dem folgenden Wikitext verwendet werden:

<!-- List all recent news tagged with 'site-feedback' -->
{{#invoke: discourse | news | tags=site-feedback }}

The details of the news() and events() functions can be viewed in the discourse.lua source file.