FANDOM


(Creata pagina con 'Partendo dalla struttura principale della pagina '''Cards''' abbiamo: <pre>{{CardListFilters}} ---- {| class="CardRow article-table" {{CardTable}} |}</pre> Ci sono due templat...')
 
 
Riga 24: Riga 24:
 
Questo template fa uso a sua volta di un altro template: '''CardListLink'''.<br/>
 
Questo template fa uso a sua volta di un altro template: '''CardListLink'''.<br/>
 
<pre>[[Cards/{{{1}}}|{{{2|{{{1}}}}}}]]</pre>
 
<pre>[[Cards/{{{1}}}|{{{2|{{{1}}}}}}]]</pre>
Serve per linkare la sottopagina di "Cards". Cioè quando nella tabella selezioni "Artifact" passi da magicarena.wikia.com/wiki/Cards a magicarena.wikia.com/wiki/Cards/Artifact. In parole povere cambi pagina. È il semplice link interno <nowiki>[[pagina|testo]]</nowiki>. Potresti pure non utilizzarlo e fare:
+
Serve per linkare la sottopagina di "Cards". Cioè quando nella tabella selezioni "Artifact" passi da ''magicarena.wikia.com/wiki/Cards'' a ''magicarena.wikia.com/wiki/Cards/Artifact''. In parole povere cambi pagina. È il semplice link interno <nowiki>[[pagina|testo]]</nowiki>. Potresti pure non utilizzarlo e fare:
 
<pre>{| class="article-table mdw-cardlist-filter"
 
<pre>{| class="article-table mdw-cardlist-filter"
 
! class="mdw-filter-continued"|Types
 
! class="mdw-filter-continued"|Types
Riga 40: Riga 40:
 
<nowiki>[[Category:...]]</nowiki> ti aggiunge semplicemente la categoria alle sottopagine.<br/>
 
<nowiki>[[Category:...]]</nowiki> ti aggiunge semplicemente la categoria alle sottopagine.<br/>
 
La parola '''#invoke''' serve a richiamarti i Moduli scritti con un particolare linguaggio, il Lua (vedi qui per approfondimenti dei moduli: [https://it.wikipedia.org/wiki/Aiuto:Moduli Aiuto:Moduli]).<br/>
 
La parola '''#invoke''' serve a richiamarti i Moduli scritti con un particolare linguaggio, il Lua (vedi qui per approfondimenti dei moduli: [https://it.wikipedia.org/wiki/Aiuto:Moduli Aiuto:Moduli]).<br/>
In pratica ti invoca il modulo "Cards" (che puoi trovare a magicarena.wikia.com/wiki/Module:Cards) e ti esegue la funzione GetCardsTable presente nel modulo. Semplice? No. XD<br/>
+
In pratica ti invoca il modulo "Cards" (che puoi trovare a ''magicarena.wikia.com/wiki/Module:Cards'') e ti esegue la funzione GetCardsTable presente nel modulo. Semplice? No. XD<br/>
 
Perche non è semplice? Perchè il modulo Cards richiama altri moduli, tra cui Module:CardService, Module:TemplateUtils, Module:Data/OtherRulings e Module:Data/Rulings. A sua volta CardService richiama Module:Data/Cards e Module:Data/OtherCards. Queste ultime due contengono la lista e descrizione di tutte le carte. Poi credo che ti serva anche il modulo Module:Data che fa uso del modulo Module:JSON
 
Perche non è semplice? Perchè il modulo Cards richiama altri moduli, tra cui Module:CardService, Module:TemplateUtils, Module:Data/OtherRulings e Module:Data/Rulings. A sua volta CardService richiama Module:Data/Cards e Module:Data/OtherCards. Queste ultime due contengono la lista e descrizione di tutte le carte. Poi credo che ti serva anche il modulo Module:Data che fa uso del modulo Module:JSON
   
Riga 46: Riga 46:
 
La soluzione sarebbe un copia e incolla e tradurre le descrizioni in esso (forse sono 4 moduli da tradurre).
 
La soluzione sarebbe un copia e incolla e tradurre le descrizioni in esso (forse sono 4 moduli da tradurre).
   
Infine per utilizzare "invoke" in ogni sottopagina dovrai scrivere al posto di <nowiki>{{CardTable}}: {{CardTable|Type$Artifact}}</nowiki>
+
Infine per utilizzare "invoke" in ogni sottopagina dovrai scrivere al posto di <nowiki>{{CardTable}}: {{CardTable|Type$Artifact}}</nowiki> (se la sottopagina è Artifact)

Revisione corrente delle 20:23, nov 20, 2018

Partendo dalla struttura principale della pagina Cards abbiamo:

{{CardListFilters}}
----
{| class="CardRow article-table"
{{CardTable}}
|}

Ci sono due template: CardListFilters e CardTable.
(Le classi della tabella in questione e delle prossime le troverai tutte in MediaWiki:Wikia.css e servono solo per lo stile)

Analizziamo il template: CardListFilters.
Comprende la tabella con le tipologie di carte e la barra di ricerca.

{| class="article-table mdw-cardlist-filter"
! class="mdw-filter-continued"|Types
| width="20%"|{{CardListLink|Artifact}}
| width="20%"|{{CardListLink|Creature}}
| width="20%"|{{CardListLink|Land}}
...
|}
<inputbox>
type=search
</inputbox>
...

Questo template fa uso a sua volta di un altro template: CardListLink.

[[Cards/{{{1}}}|{{{2|{{{1}}}}}}]]

Serve per linkare la sottopagina di "Cards". Cioè quando nella tabella selezioni "Artifact" passi da magicarena.wikia.com/wiki/Cards a magicarena.wikia.com/wiki/Cards/Artifact. In parole povere cambi pagina. È il semplice link interno [[pagina|testo]]. Potresti pure non utilizzarlo e fare:

{| class="article-table mdw-cardlist-filter"
! class="mdw-filter-continued"|Types
| width="20%"|[[Cards/Artifact|Artifact]]
| width="20%"|[[Cards/Creature|Creature]]
| width="20%"|[[Cards/Land|Land]]
...
|}

Serve per farti risparmiare qualche byte di codice, anche se secondo me si potrebbe fare a meno.

Arrivato a questo punto puoi capire che dovrai crearti le sottopagine di "Cards", ma un copia e incolla e qualche aggiustamento risolve tutto.

Ora passiamo alla parte difficile, il secondo template della pagina principale "Cards": CardTable.

{{#invoke:Cards|GetCardsTable}}[[Category:Card List]]

[[Category:...]] ti aggiunge semplicemente la categoria alle sottopagine.
La parola #invoke serve a richiamarti i Moduli scritti con un particolare linguaggio, il Lua (vedi qui per approfondimenti dei moduli: Aiuto:Moduli).
In pratica ti invoca il modulo "Cards" (che puoi trovare a magicarena.wikia.com/wiki/Module:Cards) e ti esegue la funzione GetCardsTable presente nel modulo. Semplice? No. XD
Perche non è semplice? Perchè il modulo Cards richiama altri moduli, tra cui Module:CardService, Module:TemplateUtils, Module:Data/OtherRulings e Module:Data/Rulings. A sua volta CardService richiama Module:Data/Cards e Module:Data/OtherCards. Queste ultime due contengono la lista e descrizione di tutte le carte. Poi credo che ti serva anche il modulo Module:Data che fa uso del modulo Module:JSON

Non so se ho dimenticato qualcosa ma ti aspetta un lavoraccio :P
La soluzione sarebbe un copia e incolla e tradurre le descrizioni in esso (forse sono 4 moduli da tradurre).

Infine per utilizzare "invoke" in ogni sottopagina dovrai scrivere al posto di {{CardTable}}: {{CardTable|Type$Artifact}} (se la sottopagina è Artifact)

I contenuti della comunità sono disponibili sotto la licenza CC-BY-SA a meno che non sia diversamente specificato.