Cimitero:Aiuto:Manuale/Creazione template: differenze tra le versioni

nessun oggetto della modifica
m (Bot: tentativo fallito #2)
Nessun oggetto della modifica
Riga 24:
Un riquadro non è un template.<br />
Aspetta, forse non è chiaro, te lo ripeto.<br />
<big><{{Dimensione|150%|{{Allinea|center>|Un riquadro '''non è''' un template</center></big>}}}}
 
Sicuro di aver capito? No, non posso fidarmi, devo essere certo che ti entri in testa.<br /><{{Allinea|center>|
Un riquadro '''non è''' un template<br />
Un riquadro '''non è''' un template<br />
Riga 36:
Un riquadro '''non è''' un template<br />
Un riquadro '''non è''' un template<br />
Un riquadro '''non è''' un template<br />}}
</center>
 
Mmm no, mi sa che non hai ancora capito. Meglio se ti faccio un esempio.
Line 43 ⟶ 42:
{{quote|{{Template|Quote}} è un template, ma '''non è un riquadro'''}}
 
{| width="100%" align="center" style="background: #FFFFFF; color: #000000; border: 1px solid #000000; text-align: left; margin-bottom: 0px; margin-top: 0px; padding-right: 4px; padding-left: 4px;"
|Questo è un riquadro, ma '''non è un template'''. Non lo è perché il codice che lo genera si trova in questa stessa pagina, non in una pagina separata ''Template:Vattelapesca''.
|}
Line 50 ⟶ 49:
 
=== Template da NON creare ===
;Riquadri che devono apparire su un solo articolo: <big>{{Dimensione|150%|In questo caso '''scrivi il codice del riquadro nella pagina stessa.'''</big>}}
;Riquadri per la propria pagina utente:come sopra.
;Avvisi:Abbiamo già decine di template di avviso: se hai un'idea per uno nuovo, parlane prima con gli altri utenti per assicurarti che ce ne sia davvero bisogno. Nel 99,999% dei casi si può ricorrere ai template già esistenti (ad esempio {{Template|Restauro}} ) oppure - meglio ancora - alle pagine di discussione. E comunque, <{{u>|è molto più apprezzato chi si dà da fare in prima persona</u>}}, rispetto a chi piazza template a destra e a manca evitando di sporcarsi le manine.
;Template per sfottere/minacciare i niubbi:Basta! Ce ne sono a trigliaia!
;Doppioni di template già esistenti:Per ovvî motivi
Line 61 ⟶ 60:
 
== Codice dei template ==
Come già detto, il sistema integra il codice del template nelle pagine in cui è incluso. Questo può portare a degli inconvenienti: sovrapposizioni, sovraccarichi, bug ecc. Per questo è bene fare attenzione quando si scrive il codice di un template. Comunque non è difficile, in una pagina, lasciare degli spazi tra un template e l'altro con il tag <{{tt>|<nowiki><br /></nowiki></tt>}}, o meglio ancora <{{tt>|<nowiki><br clearstyle="allclear: both" /></nowiki></tt>}}.
 
=== <{{tt>|noinclude</tt>}} e <{{tt>|includeonly</tt>}} ===
* Il codice compreso tra '''<{{tt>|<nowiki><noinclude></nowiki></tt>}}''' e '''<{{tt>|<nowiki></noinclude></nowiki></tt>}}''' compare nella <{{u>|pagina</u>}} del template (es: ''Template:Lallallà'') ma non in tutte quelle pagine che lo richiamano. Viene utilizzato generalmente per contenere una descrizione del t., una spiegazione del suo utilizzo e una '''[[:categoria:template|categoria]]''': quest'ultima è fondamentale e '''va <u>sempre</u> inserita''', con il codice
'''<nowiki><noinclude>{{</nowiki>cat|''Nome categoria''}}<nowiki></noinclude></nowiki>'''
* ''includeonly'' funziona esattamente al contrario: il codice compreso tra '''<{{tt>|<nowiki><includeonly></nowiki></tt>}}''' e '''<{{tt>|<nowiki></includeonly></nowiki></tt>}}''' compare in tutte le pagine che richiamano il template ma non nella <{{u>|pagina</u>}} del t. stesso. Questo tag si utilizza per quei template che aggiungono delle categorie agli articoli in cui vengono richiamati (es: {{Template|Scadenza}}), per evitare che anche i t. stessi vengano inclusi in quelle categorie.
 
=== Parametri ===
<nowiki>{{pappappero|</nowiki>'''''valore 1''|a=''valore a''|''valore 2'''''}}
In questo esempio il template viene evocato con tre parametri, di cui uno nominale ("a"). Nel codice del t., questi parametri verranno richiamati con i nomi <{{tt>|<nowiki>{{{1|}}}</nowiki></tt>}}, <{{tt>|<nowiki>{{{a|}}}</nowiki></tt>}} e <{{tt>|<nowiki>{{{2|}}}</nowiki></tt>}}.
 
Esempio: supponiamo che ''Template:Pappappero'' contenga il codice
<nowiki>::<big>''Meglio [[{{{1|}}}|{{{a|}}}]] oggi, che {{{2|}}} {{{3|domani}}}.</big>''
<noinclude>{{cat|template citazione}}</noinclude></nowiki>
Una chiamata
<nowiki>{{pappappero|a=un ''uovo''|uomo|una '''[[Paris Hilton|gallina]]'''}}</nowiki>
produrrà
::<big>''Meglio [[uomo|un ''uovo'']] oggi, che una '''[[Paris Hilton|gallina]]''' domani.</big>''
Come puoi notare
# i parametri sono normale testo wiki con normale formattazione wiki (come il 2).
# può essere specificato un valore predefinito che compaia nel caso che il parametro non venga chiamato (es: il valore predefinito di <{{tt>|<nowiki>{{{3|}}}</nowiki></tt>}} è 'domani').
# nella chiamata del template i parametri nominali possono essere inseriti in qualsiasi ordine, mentre quelli numerici vanno inseriti in ordine numerico<ref>Però anche i parametri numerici possono essere chiamati in un ordine casuale con la sintassi ''1=..., 2=... ecc''</ref>.
 
Line 129 ⟶ 128:
 
== Riquadri ==
<div style="width: 70%; margin-left: auto; margin-right: auto; border: 3px dashed black; font-size: 120%; padding: 2px; text-align: center;">'''NB.''' Esiste già un comodo e completo template per creare dei riquadri: si chiama appunto {{Template|Riquadro}}. Utilizza il codice grezzo solo se non puoi ottenere un risultato equivalente con quel template.</div>
 
Se hai intenzione di creare molti template, ti consiglio di aggiungere il pulsante "box" [[File:Button box.png]] al tuo editor in modo da generare rapidamente un codice base di partenza. Vedi '''[[Aiuto:Preferenze]]''' per sapere come fare.
 
Line 146 ⟶ 147:
 
 
Un'altra sintassi per creare dei riquadri si basa sul tag <{{tt>|<nowiki><div></nowiki></tt>}}. Il codice base, in questo caso, sarà
<nowiki><div</nowiki> ''parametri''>
''contenuto''
Line 154 ⟶ 155:
I parametri delle tabelle e di "div" sono pressappoco gli stessi, e a loro volta sono praticamente identici a quelli dei fogli di stile. Per cui, se te li vuoi smaronare tutti leggiti una guida ai css come [http://css.html.it/guide/leggi/2/guida-css-di-base/ questa], oppure dai un'occhiata ai codici dei template già esistenti. Qui troverai solo l'essenziale.
 
La sintassi di tutti i parametri è <code>'''parametro = "valore"'''</code>. È da notare che <u>nessun parametro è obbligatorio</u>.
 
=== <{{tt>align</tt>|style}} ===
Se si utilizza una tabella, gestisce la '''posizione del riquadro sull'asse orizzontale'''; se si utilizza "div", imposta l''''allineamento del testo'''. Sintassi:
::<code>align="''left/center/right''"</code>
 
=== <tt>width</tt> ===
Dà la '''larghezza del riquadro'''. Può essere una percentuale riferita alla larghezza della pagina oppure una dimensione assoluta, in pixel (es. <code>"120px"</code>). Se non viene specificata, viene generata in automatico in base all'ampiezza del testo.<br />
Questo parametro non funziona con "div": in questo caso si deve usare [[{{FULLPAGENAME}}#width_2|<code>style="width: ;"</code>]].
 
=== <tt>style</tt> ===
Ecco il segreto di tutta la magia: ''style'' raggruppa un numero abominevole di attributi che definiscono l'aspetto del riquadro fin nei minimi dettagli. La sintassi di ''style'' è:
'''style="'''attributo1''':'''valore''';''' attributo2''':'''valore''';''' ....'''"'''
 
==== backgroundAllineamento orizzontale ====
Per gestire la posizione '''a destra o a sinistra''' si utilizza l'attributo <code>'''''float:''' left/right''</code>.<br />
Invece per posizionare il riquadro '''al centro''' useremo la sintassi
margin-left: auto; margin-right: auto;
(v. anche <code>[[{{FULLPAGENAME}}#margin|margin]]</code>)
Con "div" non funziona se non si specifica una larghezza con <code>[[{{FULLPAGENAME}}#width|width]]</code>.
 
==== ''background'' ====
Determina il '''colore di sfondo'''. In questo attributo, come in tutti quelli relativi ai colori, possono essere utilizzati sia i nomi standard (es: <code>background: red;</code>) sia i codici RGB (es: <code>background: #d0d0f0;</code>). Per saperne di più consulta la [[Aiuto:Colori|guida apposita]].
 
==== ''color'' ====
Definisce il '''colore del testo'''. Questo parametro però <{{u>|non influenza i collegamenti</u>}}: per modificare il colore di un collegamento usa il template {{Template|colore}}.
 
==== '''font-size''' ====
Modifica la dimensione del testo. Può avere valori in pixel, pt, em o, in percentuale, o valori relativi "bigger" e "smaller".
 
==== ''border'' ====
Gestisce i '''bordi'''. ''border'' ha 3 proprietà: spessore, stile e colore. Lo <u>spessore</u> può essere espresso in pixel o in .em, oppure con una parola-chiave (''thin'', ''medium'', ''thick''); lo <u>stile</u> può essere uno tra:
{|cellspacing="6" style="float: center;"
{|align="center" cellspacing="6"
|style="border: solid"|solid
|style="border: dotted"|dotted
Riga 195:
style=" ... border: thin dashed maroon; ..."</nowiki>
 
==== ''text-align'' ====
Imposta l'l’'''allineamento orizzontale del testocontenuto all'interno del riquadro''' <u>sia nelle tabelle che in "div"</u>: da non confondere con <code>[[{{FULLPAGENAME}}#alignfloat|alignfloat]]</code> che invece sposta l'intero riquadro. I valori sono sempre ''left/center/right''.
 
==== ''width'' ====
Dà la '''larghezza del riquadro'''. Può essere una percentuale riferita alla larghezza della pagina oppure una dimensione assoluta, in pixel (es. <code>"120px"</code>). Se non viene specificata, viene generata in automatico in base all'ampiezza del testo.<br />
Da non confondere con il <u>parametro</u> <code>[[{{FULLPAGENAME}}#width|width]]</code>. Se si usa "div", questo attributo determina la larghezza del riquadro; in una tabella può essere utilizzato per modificare la larghezza di una singola cella.
 
==== ''height'' ====
Il corrispondente verticale di ''width''.
 
==== ''margin'' ====
Imposta la '''distanza tra il bordo del riquadro e gli elementi all'esterno''' nella pagina. Generalmente è espresso in pixel (es: <code>margin: 4px;</code>) o in em (es:
<code>margin: 0.5em;</code>). Puoi anche specificare separatamente i margini per ciascun lato, scrivendo <code>margin-top: ... ; margin-bottom: ... ; margin-left: ... ; margin-right: ... ;</code>
 
==== ''padding'' ====
Imposta la '''distanza tra il bordo del riquadro e il contenuto all'interno'''. Funziona esattamente come ''margin''.
 
=== Classi ===
Le classi contengono delle impostazioni preformate, e talvolta delle funzionalità avanzate scritte in javascript. Per attivarle si utilizza il parametro <{{tt>|class="''nomeclasse1 nomeclasse2''"</tt>}}. La classe standard per i template è "expansion", che però al momento non è ancora attiva.<ref>Le classi disponibili su Nonciclopedia si trovano in [[Mediawiki:Common.css]] e in [[Mediawiki:Monobook.css]].</ref>
 
==== radius ====
0

contributi