##master-page:HelpOnThemes ##master-date:2008-04-06 21:52:24 #acl -All:write Default #format wiki #language it AiutoContenuti > AiutoPerAmministratori > AiutoSuConfigurazione > AiutoSuTemi !MoinMoin dispone di un sistema per la gestione dei temi che semplifica la modifica dell'aspetto del wiki senza modificare il codice sorgente. Come utenti è possibile scegliere tra diversi temi preinstallati<> direttamente nelle proprie preferenze (questo è possibile solamente se l'amministratore del wiki non ha forzato un tema specifico, disabilitando così la possibilità di cambiare tema). <> == Installare temi == È possibile trovare molti temi da scaricare presso MoinMoin:ThemeMarket. Assicurarsi che il tema selezionato sia compatibile con la versione di !MoinMoin in uso. Per installare un nuovo tema non è sufficiente copiare il file nella directory dei temi del wiki. Per installarlo seguire le istruzioni fornite dall'autore del tema. Tipicamente sono presenti due posizioni per i temi: 1. La directory dove sono archiviati tutti i temi * Decomprimere l'archivio e inserivi la directory del tema (che contiene due directory `css/` e `img/`) 1. La directory `data/plugin/theme/` * Spostare lo script del tema in questa directory (tale script ha lo stesso nome del tema e termina con `.py`). Il tema dovrebbe essere ora disponibile. Potrebbe essere necessario rieseguire l'accesso o pulire la cache. Per le opzioni di configurazione, consultare AiutoSuConfigurazione. == Personalizzare i temi == È possibile personalizzare i temi pre-installati, ma è sempre meglio partire da una copia di un tema. Procedere come segue (viene usato il tema ''modern'' come esempio): 1. Fare una copia del tema ''modern'' presente nella directory dei temi e chiamarlo ''miotema''. 1. Fare una copia del file di script `MoinMoin/theme/modern.py` in `data/plugin/theme/miotema.py`. 1. Modificare il file `miotema.py` e cambiare almeno la variabile `name = "modern"` in `name = "miotema"`. 1. Dovrebbe essere possibile quindi vedere il nuovo tema. In un wiki locale potrebbe essere necessario riavviare il server. 1. Ora è possibile iniziare a modificare i file presenti nella directory dei temi. La posizione della directory dei temi dipende dall'installazione del wiki (consultare AiutoSuInstallazione). Il miglior modo per modificare l'aspetto del proprio wiki è quello di partire ereditando lo stile di !MoinMoin modificando solo quello che si vuole adattare alla proprie esigenze. Questo evita il problema di copiare i nuovi stili aggiunti durante lo sviluppo dei propri fogli di stile. Per fare questo, usare l'istruzione `@import` dei CSS in questo modo: {{{ @import url("/moin_static170/modern/css/common.css"); h1,h2,h3,h4,h5 { background-color: #88CCFF; } }}} Nella prima riga viene importato lo stile predefinito come distribuito da !MoinMoin. Potrebbe essere necessario modificare l'URL in base alla configurazione della versione !MoinMoin. Nella riga successiva viene semplicemente modificato il colore dei titoli. Per maggiori informazioni consultare il wiki [[http://css-discuss.incutio.com/|css-discuss]]. Per vedere come rendere i CSS ''wiki-modificabili'', consultare [[ESW:plain.css]]. == Modificare la configurazione del wiki == || page_footer1 || `""` || Codice HTML inviato ''prima'' del footer di sistema. || || page_footer2 || `""` || Codice HTML inviato ''prima'' del footer di sistema. || || page_header1 || `""` || Codice HTML inviato ''prima'' dell'header / title di sistema ma ''dopo'' il tag body. || || page_header2 || `""` || Codice HTML inviato ''dopo'' l'header / title di sistema e del tag body. || || stylesheets || `[(media, csshref), ...]` || Elenco di tuple (media, csshref) da inserire dopo il CSS del tema, prima dei CSS degli utenti. || || html_head || `""` || Tag aggiuntivi per tutte le pagine. || || html_head_posts || robots: noindex,nofollow || Tag aggiuntivi per le richieste POST. || || html_head_index || robots: index,follow || Tag aggiuntivi per alcune delle pagine indice. || || html_head_normal || robots: index,nofollow || Tag aggiuntivi per la maggior parte della pagine normali. || || html_head_queries || robots: noindex,nofollow || Tag aggiuntivi per le richieste con stringhe di interrogazione, come le azioni. || È possibile personalizzare il wiki modificando la configurazione del wiki come segue: 1. head * config.html_head viene aggiunto nell'elemento di '''tutte''' le pagine, mentre 1. body * è possibile usare alcuni frammenti di HTML per personalizzare l'output di moin (alcuni temi potrebbero essere diversi da quello ''classic''). Questa è la sequenza di come viene dato l'output: * header: * config.page_header1 * config.logo_string - usare questo per modificare il logo (tipicamente in alto a sinistra) * username, title * iconbar * config.navi_bar - è un elenco di nomi di pagine aggiunte nell'area ''title'', se `None` non aggiunge nulla * trail * config.page_header2 * msg * pagina wiki * footer: * config.page_credits * config.page_footer1 * Edit``Text, search forms, actions * config.page_footer2 1. Come utente wiki, è possibile escludere le impostazioni CSS del tema usando un URL con un CSS personalizzato all'interno delle proprie preferenze. Questo CSS viene caricato dopo i CSS del tema. Il file deve essere codificato in UTF-8 (anche ASCII va bene, dato che è un sottoinsieme di UTF-8). `page_header1`, `page_header2`, `page_footer1` e `page_footer2` sono ora "chiamabili" e vengono chiamati con unico argomento l'oggetto "request" (è necessario accettare qualsiasi argomento per essere compatibili con le versioni future). == Creare un nuovo tema == È possibile creare un nuovo tema. Il modo migliore per iniziare è quello di copiare un tema esistente come ''modern''. Sarà necessario rinominare lo script del tema e modificare la variabile `name` all'interno dello script. Se si conosce il linguaggio di programmazione Python è anche possibile scrivere una nuova interfaccia scrivendo un nuovo script per il proprio tema. Con gli aggiornamenti di !MoinMoin i temi personali non sono toccati, funzioneranno anche con le nuove versioni, ci sarà solo da fare qualche piccola modifica dovuta al cambiamento delle API (per maggiori informazioni consultare MoinMoin:MoinDev/ThemeDevelopment).