MediaWiki/La barra laterale: differenze tra le versioni

Wikibooks, manuali e libri di testo liberi.
Contenuto cancellato Contenuto aggiunto
Riga 135: Riga 135:


se v'interessasse solamente il Collegamento di "Carica su Commons" sulla Barra Laterale a sinistra, copiatevi allora su '''[[MediaWiki:Monobook.js]]''' solo questo pezzettino:
se v'interessasse solamente il Collegamento di "Carica su Commons" sulla Barra Laterale a sinistra, copiatevi allora su '''[[MediaWiki:Monobook.js]]''' solo questo pezzettino:

{{vedi anche|MediaWiki/Gli Stili|etichetta1=Gli Stili}}


<source lang="php">
<source lang="php">

Versione delle 10:25, 28 feb 2012

Indice del libro

Per modificare la Barra Laterale sinistra,


cercate la pagina

all'interno del vostro wiki;


da lì, potrete cambiare la disposizione, oppure il nome

degli elementi. Per farlo cliccate su "Modifica pagina",

come quando modificate una qualsiasi altra voce.


Dovrete essere loggati come amministratori pero', per poterlo fare.

Come modificare le voci più in basso

Come avete visto, la pagina MediaWiki:Sidebar vi consente di modificare solo le prime voci, ma non quelle più in basso; per quest'ultime infatti, dovrete essere esperti di codice e Php, ed andare a modificarle direttamente dal file Monobook.php che si trova all'interno della Cartella 'Skins', dove avrete installato il vostro software mediawiki (come abbiamo fatto noi, per esempio, per mettere il collegamento a "Pdf Joliprint"), con un programma via Ftp.


Come spostare in alto, il BOX di Ricerca

Per spostare in alto per esempio il Search Box (Box di Ricerca), dovete andare a modificare sempre nel Monobook.php (cartella 'Skins' del nostro wiki), questo pezzettino di Codice: Template:Vai

Ovviamente, dovete togliere anche da Mediawiki:Sidebar:

  • SEARCH
  • TOOLBOX
  • LANGUAGES

(che stanno di default), se non volete che ve ne appaiano due
(oltre a disattivare quello principale, come spiegato nelle istruzioni).


Come mettere i Collegamenti interlingua, e ad altri wiki (interwiki)

Si parla di interwiki quando, in un wiki, si collegano all'interno di un articolo, delle parole ad un altro articolo presente su di un altro wiki; e, si parla di collegamenti interlingua, quando, questi interlink", corrispondono a dei wiki stranieri che, generalmente, fanno parte di uno stesso "progetto" comune e traducono il proprio principale.

Gli "interlink", sono presenti solo all'interno delle voci; mentre, i collegamenti interlingua, si ritrovano sulla barra laterale sinistra, in fondo. Qui di seguito spiegheremo, come utilizzare questi "collegamenti" a sinistra per "gemellare" più wiki assieme, non necesariamente per la traduzione della lingua, e ..non necessariamente facenti parte di uno stesso "progetto".

1 - Creare le Tabelle

Se volete che nella vostra Barra Laterale sinistra siano presenti i collegamenti alle varie versioni linguistiche internazionali di wikipedia, gemellandovi per così dire con essa, potete creare velocemente le Tabelle andando semplicemente a pescare i file che terminano in .sql presenti all'interno della vostra cartella "maintenance", dove avrete installato il wiki;

attenzione perché, oltre a quelli di wikipedia, sono presenti anche quelli di wikizionario. Scegliete solo quelli di wikipedia, oppure solo quelli di wikizionario, ma non tutt'e due assieme altrimenti entrano in conflitto (uno sovrascrive l'altro).

Dovrete agire sulle Tabelle del vostro Database MySQL, con PhAdmin, dal pannello di controllo del vostro sito.

Se invece volete, personalizzare e creare da voi le Tabelle ad altri progetti wiki, nel senso che, non ve ne frega niente di "gemellarvi" con wikipedia, allora potete anche saltare questo primo passaggio, e andare subito a modificarle e crearle avvalendovi dell'estensione "Special interwiki".

2 - Modificare il file "Names.php"

Dopodichè, per fare apparire i collegamenti che avete appena creato appunto sulla barra laterale, dovrete agire sul file "Names.php", che trovate dentro la cartella /Languages/ (nella root del vostro wiki). Per cambiarne i prefissi, e mettere e organizzare nella barra laterale sinistra solo quelli corrispondenti ai nostri bisogni, invece che lasciare quelli per la lingua.

Successivamente, non dovremmo fare altro che mantenere aggiornato il file Names.php, con soli quei prefissi che vorremmo avere a sinistra, come interlink, scartando gli altri.


Ovviamente, bisogna agire sulle 'Tabelle' per far corrispondere un 'prefisso' con il collegamento Url, del sito che vogliamo associarvici.

Ecco perché, viene molto utile a questo scopo l'estensione 'Special Interwiki', che oltre ad aiutarci a creare i prefissi senza dover andar a toccare le Tabelle tramite pannello PhAdmin, ce ne offre anche una vista d'insieme che aiuta a non farci dimenticare i prefissi creati ed associati.

3 - Cambiare il messaggio: "Altre Lingue"

Infine, per cambiare il messaggio "Altre Lingue" (che si trova di Default, sulla Barra Laterale sinistra) si agisce sul file Monobook.php, che trovate dentro alla cartella "/Skin/" (sempre nella root d'installazione del vostro wiki).

Code

Dentro al File Monobook.php, cercate questo pezzo di codice

--------------------------------------------------------------------
	function languageBox() {
		if( $this->data['language_urls'] ) {
?>
	<div id="p-lang" class="portlet">
		<h5><?php $this->msg('jumpto') ?></h5>
		<div class="pBody">
			<ul>
<?php		foreach($this->data['language_urls'] as $langlink) { ?>
				<li class="<?php echo htmlspecialchars($langlink['class'])?>"><?php
				?><a href="<?php echo htmlspecialchars($langlink['href']) ?>"><?php echo $langlink['text'] ?></a></li>
<?php		} ?>
			</ul>
		</div>
	</div>
<?php
		}
	}
-------------------------------------------------------------------


e andate a modificare la scritta dentro le parentesi ('otherlanguages'), appena dopo 'MSG', qui cambiata per 'JUMPTO'.

Il risultato sarà che, al posto di "Altre Lingue", vi ritroverete sulla barra laterale un generico "VAI A".


Utilizzo del Template "Interprogetto"

Code2

// INIZIO Collegamenti Interprogetto (codice adattato da de:wikt:Mediawiki:monobook.js)
 
document.write('<style type="text/css">#interProject {display: none; speak: none;} #p-tb .pBody {padding-right: 0;}<\/style>');
 function iProject() {
  if (document.getElementById("interProject")) {
   var iProject = document.getElementById("interProject").innerHTML;
   var interProject = document.createElement("div");
   interProject.style.marginTop = "0.7em";
   interProject.innerHTML = '<h5>altri progetti wiki<\/h5><div class="pBody">'+iProject+'<\/div>';
   document.getElementById("p-tb").appendChild(interProject);
  }
 }
 hookEvent("load", iProject);
 
// FINE Collegamenti Interprogetto


Fonti di riferimento su MediaWiki


Collegamento di "Carica su Commons"

sulla Barra Laterale a sinistra

se v'interessasse solamente il Collegamento di "Carica su Commons" sulla Barra Laterale a sinistra, copiatevi allora su MediaWiki:Monobook.js solo questo pezzettino:


/*** Collegamento diretto alla pagina di upload di Commons nel menu di sinistra, da WP:PT */
function linkUploadToCommons()
{
    if (document.getElementById("carrega-para-commons")) return;
    var li_carrega = document.getElementById("t-upload");
    if (!li_carrega) return;
    var afegit = li_carrega.nextSibling;
    var ul_eines = li_carrega.parentNode;
    var li = document.createElement("li");
    li.id = "carrega-para-commons";
    li.innerHTML = '<a href="http://commons.wikimedia.org/wiki/Commons:Upload/it">Carica su Commons</a>';
    if (afegit) ul_eines.insertBefore(li, afegit);
    else ul_eines.appendChild(li);
}

addLoadEvent(linkUploadToCommons);

/*** Fine del collegamento diretto alla pagina di upload di Commons */

nel Local Settings.php, dovrete anche aggiungere:

$wgForeignFileRepos[] = array(
   'class'                   => 'ForeignAPIRepo',
   'name'                    => 'shared',
   'apibase'                 => 'http://commons.wikimedia.org/w/api.php',
   'fetchDescription'        => true, // Optional
   'descriptionCacheExpiry'  => 43200, // 12 hours, optional (values are seconds)
   'apiThumbCacheExpiry'     => 43200, // 12 hours, optional, but required for local thumb caching
);

Una variante dei dati di default, potrebbe essere questa:

   'name'                    => 'shared',
   'hashLevels'              => '2',
   'hasSharedCache'          => $wgCacheSharedUploads, 
   'descriptionCacheExpiry'  => 604800, // hours, (values are seconds)
   'apiThumbCacheExpiry'     => 86400000, // hours, optional, but required for local thumb caching

Come aggiungere un diverso "Contenitore d'immagini" esterno

Si possono anche aggiungere "altri siti" diversi da commons.

Per esempio, per le immagini da it.wiki, aggiungere al Local Settings.php:

$wgForeignFileRepos[] = array(
   'class'            => 'ForeignAPIRepo',
   'name'             => 'sharedwp',
   'apibase'          => 'http://it.wikipedia.org/w/api.php',
   'fetchDescription' => true, // Optional
   'descriptionCacheExpiry'  => 43200, // 12 ore, opzionale (valori in secondi)
   'apiThumbCacheExpiry'     => 43200, // 12 ore, opzionale, ma richiesto per la cache di thumb locale
);

Similmente, si può fare per altri siti che svolgono un servizio simile, se si conosce la loro root corretta per l'apibase.

Ecco il codice per Ekopedia:

$wgForeignFileRepos[] = array(
   'class'            => 'ForeignAPIRepo',
   'name'             => 'shared',
   'apibase'          => 'http://base.ekopedia.org/w/api.php',
   'fetchDescription' => true, // Optional
   'descriptionCacheExpiry'  => 43200, // 12 hours, optional (values are seconds)
   'apiThumbCacheExpiry'     => 43200, // 12 hours, optional, but required for local thumb caching
);
Nota

se il nome dell'immagine è presente uguale sui diversi progetti specificati, sarà visualizzata la prima: ossia, il sistema darà la precedenza al primo progetto specificato della lista.

Approfondimenti: