====== MediaWiki 1.30 su Debian Stretch ======
===== MobileFrontend =====
La skin predefinita **Vector** non ha buone caratteristiche in ambiente mobile (smartphone). È possibile avere un [[wpit>Design responsivo]] installando un'estensione e una skin opportuna; la soluzione più comune prevede l'uso dell'estensione **[[https://www.mediawiki.org/wiki/Extension:MobileFrontend|MobileFrontend]]** e della skin **[[https://www.mediawiki.org/wiki/Skin:Minerva_Neue|MinervaNeue]]**. Le impostazioni da mettere in **LocalSettings.php** sono:
wfLoadSkin('Vector');
wfLoadSkin('MinervaNeue');
$wgDefaultSkin = 'vector';
$wgMFDefaultSkinClass = 'SkinMinerva';
wfLoadExtension( 'MobileFrontend' );
$wgMFAutodetectMobileView = true;
// Hide switch-language button in Minerva skin
$wgMinervaAlwaysShowLanguageButton = false;
Altre possibili configurazioni dell'estensione MobileFrontend sono spiegate nel **[[https://phabricator.wikimedia.org/diffusion/EMFR/browse/master/README.md|README.md]]**. Pare che tutto **funzioni regolarmente con il meccanismo di cache** predefinito.
Per forzare la visualizzazione mobile su un desktop si può aggiungere'URL il parametro **%%?useformat=mobile%%**. Altri parametri utili sono **%%&mobileaction=toggle_view_desktop%%** e **%%&mobileaction=toggle_view_mobile%%**.
==== Problema della pagina principale ====
**C'è un problema nella versione mobile** la Pagina principale viene visualizzata in modo speciale: si vedono i titoli delle sezioni, ma **le sezioni sono //collassate//** (nascoste), inoltre **non compare la freccia sul titolo** che consente l'espansione, come avviene per tutte le altre pagine.
La motivazione di questo problema può essere dedotta da questo articolo: **[[https://www.mediawiki.org/wiki/Mobile_Gateway/Mobile_homepage_formatting|Mobile Gateway/Mobile homepage formatting]]**. Vi è una lunga discussione sulla necessità di tale comportamento (in breve: tutti i siti Wikimedia hanno la home page formattata in modo speciale), vedere il ticket **[[https://phabricator.wikimedia.org/T176414|T176414]]** datl titolo "**%%
!mw.config.get( 'wgIsMainPage' ) &&
==== Dominio dedicato alla versione mobile ====
È pratica diffusa che un sito sia disponibile nelle due versioni //desktop// e //mobile// sotto due nomi di dominio diversi, ad esempio **%%www.dominio.tld%%** e **%%www.m.dominio.tld%%**. L'estensione MobileFrontend supporta questa opzione aggiungendo la configurazione:
$wgMobileUrlTemplate = '%h0.m.%h1.%h2';
Apache non ha bisogno di alcuna configurazione speciale: è il PHP di MediaWiki+MobileFrontend che decide di servire il contenuto //mobile// quando c'è corrispondenza dell'URL richiesto con il valore di **%%$wgMobileUrlTemplate%%**. Tuttavia in ambiente desktop l'uso del dominio mobile **non ha effetto**, viene visualizzata sempre la versione desktop, mentre l'autodetect del mobile **non funziona** quando si richiede il dominio desktop.
Considerato che l'autodetect funziona bene e che è sempre possibile passare da una versione all'altra con il link opportuno mostrato in fundo alle pagine, l'utilizzo di **$wgMobileUrlTemplate** è inutile.
Un **valido motivo per attivare il dominio mobile** è avere un URL che funzioni da entry point per la navigazione mobile forzata, indipendente dal dispositivo usato. Per ottenere ciò è indispensabile la collaborazione del server web Apache, che deve aggiungere un apposito header quando viene richiesto il dominio mobile:
// Mobile device detection.
$wgMFAutodetectMobileView = true;
// MobileFrontend will ignore the requested domain name.
//$wgMobileUrlTemplate = '%h0.m.%h1.%h2';
// Requests with this header, will be forced as mobile.
$wgMFMobileHeader = 'X-Subdomain';
===== Cache =====
Sembra che con MediaWiki 1.30 il meccanismo di cache sia compatibile anche con l'estensione //MobileFrontend//, è sufficiente che esista la directory **%%./cache/%%** scrivibile al server web. Per forzare il refresh di una pagina è sufficiente aggiungere all'URL il parametro **%%?action=purge%%**.