Open main menu

Manuale:Estensioni

This page is a translated version of the page Manual:Extensions and the translation is 99% complete.

Other languages:
Bahasa Indonesia • ‎Bahasa Melayu • ‎Deutsch • ‎English • ‎Mirandés • ‎Türkçe • ‎dansk • ‎español • ‎français • ‎italiano • ‎magyar • ‎polski • ‎português • ‎português do Brasil • ‎română • ‎čeština • ‎Ελληνικά • ‎български • ‎русский • ‎العربية • ‎سنڌي • ‎پښتو • ‎ไทย • ‎中文 • ‎日本語 • ‎한국어
Gnome-preferences-other.svg Extensions: Development Tag extensions Parser functions Hooks Special pages Skins Manuale:Parole magiche API Content models

Cosa sono le estensioni?

Estensioni di MediaWiki

Le estensioni ti consentono di personalizzare l'aspetto e il funzionamento di MediaWiki.

Gli utenti Wiki possono sfogliare le estensioni esistenti o richiedere una nuova estensione. Gli amministratori di sistema possono installare (o rimuovere) le estensioni sulle installazioni di MediaWiki che gestiscono. Gli sviluppatori possono scrivere nuove estensioni o migliorare o mantenere le estensioni esistenti.

Cercare estensioni per parola(e) chiave:

Contents

A seconda dei tuoi obiettivi puoi utilizzare le estensioni per:

Mentre alcune estensioni sono gestite dagli sviluppatori di MediaWiki, altre sono state scritte da sviluppatori di terze parti. Di conseguenza, molti hanno bug e non tutti sono garantiti come compatibili tra loro. Alcuni sono non mantenuti; non tutte le estensioni funzionano su tutte le versioni di MediaWiki. Utilizzare qualsiasi estensione, in particolare quelli contrassegnati come non sicuri, è un vostro rischio. Quando si utilizza un'estensione che richiede patch per il codice di MediaWiki o voci del database, assicurarsi di creare un backup del database e/o del codice di MediaWiki, per evitare il rischio di danneggiare definitivamente il tuo wiki.

Navigare nelle estensioni

Puoi sfogliare in Categoria:Estensioni per categoria per vedere l'intera gamma di estensioni che sono già state scritte. Per informazioni sull'installazione di queste estensioni o hai scritto la tua, vedi sotto.

Testare le estensioni installate

Solo chi ha accesso amministrativo al filesystem (e spesso anche al database) su un server può installare estensioni per MediaWiki, ma chiunque può controllare quali estensioni sono attive su un'istanza di MediaWiki accedendo alla pagina Special:Version. Ad esempio, queste estensioni sono attive in Wikipedia inglese.

Installare un'estensione

MediaWiki è pronto ad accettare estensioni solo dopo che installazione è terminata. Per aggiungere un'estensione attenersi alla seguente procedura:

  1. Prima di iniziare
    Molte estensioni forniscono istruzioni progettate per l'installazione usando i comandi unix. È necessario l'accesso alla shell (SSH) per immettere questi comandi elencati nelle pagine della guida dell'estensione.
  2. Scaricare l'estensione.
    Extension Distributor aiuta a scegliere e scaricare le estensioni più utilizzate.
    Le estensioni vengono solitamente distribuite come pacchetti modulari. In genere vanno nella loro sottodirectory di $IP /extensions/. Un elenco di estensioni archiviate sono in Wikimedia Git repository che si trova in git:mediawiki/extensions. Alcune estensioni non usano il controllo della versione e non sono raccomandate.
    Alcune estensioni sono disponibili in formato di pacchetti, in composer o in package repositories.
  3. Installa la tua estensione..
    Generalmente, alla fine del file LocalSettings.php (ma sopra il delimitatore di fine del codice PHP, "?>", se presente), deve essere aggiunta la seguente riga:
    // mw.v 1.24.x or less
    require_once "$IP/extensions/extension_name/extension_name.php";
    // mw.v 1.25.x or above
    wfLoadExtension( '<extension-name>' );
    
    Questa linea impone all'interprete PHP di leggere il file di estensione e renderlo quindi accessibile a MediaWiki.
    Alcune estensioni possono entrare in conflitto con gli script di manutenzione, ad esempio se accedono direttamente a $_SERVER (non consigliato).
    In questo caso possono essere inclusi nel condizionale in modo che gli script di manutenzione possano ancora essere eseguiti.
//for mw.v 1.24.x or less
if ( !$wgCommandLineMode ) {
   require_once "$IP/extensions/extension_name/extension_name.php";
}
//for mw.v 1.25.x or above
if ( !$wgCommandLineMode ) {
   wfLoadExtension ( '<extension-name>' );
}
Lo script di manutenzione importDump.php fallirà per qualsiasi estensione che richiede spazi dei nomi personalizzati che è incluso all'interno del condizionale sopra come Extension:Semantic MediaWiki , Extension:Semantic Forms .
Assicurati che le autorizzazioni richieste siano impostate per le estensioni!
Anche se questa procedura di installazione è sufficiente per la maggior parte delle estensioni, alcuni richiedono una procedura di installazione diversa. Controlla la documentazione della tua estensione per i dettagli.
Se vuoi modificare le variabili di configurazione in LocalSettings.php, devi farlo tipicamente 'dopo' includendo l'estensione. Altrimenti le impostazioni predefinite definite nell'estensione sovrascriveranno le tue impostazioni.
  Caution: Mentre la dichiarazione di estensione può essere collocata in altre posizioni all'interno del file LocalSettings.php, 'mai' inserire le estensioni prima della riga require_once "includes/DefaultSettings.php"; per le versioni di MediaWiki precedenti alla 1.17. In questo modo si annullano gli array di funzioni di estensione, senza che siano installate estensioni, e probabilmente renderà il tuo wiki inaccessibile finché non lo risolvi!


Aggiornare un'estensione

Alcune estensioni richiedono di essere aggiornate ogni volta che si aggiorna MediaWiki, mentre altre funzionano con più versioni. Per eseguire l'aggiornamento a una nuova versione di un'estensione:

  1. Scarica la nuova versione dell'estensione
  2. Sostituisci tutti i file dell'estensione nella directory extension/ExtensionName con i nuovi file. Non rimuovere la configurazione dell'estensione presente in LocalSettings.php
  3. A seconda dell'estensione, potrebbe essere necessario eseguire lo script di manutenzione Update.php. La maggior parte delle estensioni vi ricorderà se questo script deve essere eseguito o meno. (Perform backup of your data before executing the script). Se non si dispone dell'accesso alla riga di comando, è anche possibile utilizzare web updater.
  4. Questo è tutto ciò che devi fare. Nella maggior parte dei casi, la configurazione dell'estensione presente in LocalSettings.php funzionerà anche con la versione più recente dell'estensione.
Queste istruzioni coprono il 99% delle estensioni. Se l'estensione specifica che stai aggiornando ha istruzioni che differiscono da queste, dovresti probabilmente seguire le istruzioni dell'estensione specifica

Disinstallare un'estensione

Le estensioni vengono aggiunte inserendo una riga a LocalSettings.php, che in pratica assomiglia a questo:

// mw.v 1.24.x or less
require_once "$IP/extensions/extension_name/extension_name.php";
// mw.v 1.25.x or above
wfLoadExtension( '<extension-name>' );
A seconda dell'estensione che si desidera disinstallare, altre cose potrebbero essere fatte durante l'installazione, che si desidera eliminare. Per i dettagli, consultare la sezione sull'installazione di un'estensione.
  1. Rimuovi questa riga e l'estensione è disinstallata. Se vuoi, puoi (e se non vuoi usare questa estensione in futuro, dovresti) rimuovere i file di questa estensione all'interno della cartella "extensions/".
  2. Forse hai anche altre linee in LocalSettings.php, che hanno a che fare con l'estensione che vuoi rimuovere. Molto probabilmente si tratterà di linee, che danno a certi utenti il diritto di accedere alle pagine, che sono fornite dall'estensione. Queste righe contengono la variabile "$wgGroupPermissions" e ha alcune impostazioni lì. Per quanto riguarda i diritti, che provengono dall'estensione rimossa, è possibile rimuovere anche queste righe.
  3. Forse la tua estensione ha aggiunto colonne al tuo database. Facendo l'aggiornamento maintenance/update.php li rimuove, quando viene eseguito, dopo aver disinstallato l'estensione.

Sviluppare estensioni

Questo argomento complesso viene gestito sulla pagina manuale developing extensions.

Vedi anche