Categories

autores (intermedi)

El propĂČsit de les categories

Les categories (tambĂ© conegudes com a "etiquetes" o en anglĂšs "tags") serveixen per a organitzar i trobar pĂ gines relacionades. Les categories venen implementades per defecte amb PmWiki 2, i a la majoria de wikis no cal afegir cap codi o marques especials, nomĂ©s sĂłn una convenciĂł Ăștil. La idea Ă©s que tota pĂ gina que cau dintre d'un Ă rea temĂ tica particular hauria de tenir un enllaç a una pĂ gina compartida que contĂ© enllaços a altres pĂ gines d'aquesta mateixa temĂ tica. Aquestes pĂ gines compartides es creen al grup Category, i per aixĂČ aquestes Ă rees temĂ tiques s'anomenen "categories".

L'Ășs de les categories

Començar a usar categories només requereix d'un pas: afegir enllaços a cada categoria. Una categoria que s'anomeni Tema es crea afegint un enllaç a Category.Tema en qualsevol pàgina. Quan l'enllaç s'ha afegeit a una pàgina, podem dir que la pàgina és a la categoria "Tema".

Hi ha una marca especial per a crear aquestos enllaços de manera apropiada: [[!Tema]] crearà un enllaç a Category.Tema. Per tant es podria dir que [[!Tema]] és una especie de drecera a la pàgina Tema del grup Category.

Amb PmWiki s'inclou un fitxer Category.GroupFooter que conté la línia (:pagelist link={*$FullName} list=normal:) de manera que sempre que es mostri una pàgina de categoria, veurem una llista de les pàgines que la referÚncien. Com qualsevol de les pàgines de wikilib.d, podeu modificar-la i no serà sobreescrita per les actualitzacions.

Fixeu-vos que la directiva per a llistar pĂ gines que s'usa a Category.GroupFooter, es pot afegir a Category.GroupHeader en el seu lloc, obtenint un resultat similar; podeu usar un o altre depenent de si voleu el llistat de pĂ gines a dalt o a baix dels continguts que afegiu a les pĂ gines de categoria individuals (editables com qualsevol altra).

Com que es fa servir la marca link= de la directiva Llistats de pĂ gines, podeu repetir la construcciĂł on sigui necessari. Si voleu mostrar totes les pĂ gines que pertanyin a Tema, podeu usar arreu la sentĂšncia (:pagelist link=Category.Tema list=normal:).

Del mateix mode, no és necessari que una "pàgina de categoria" estigui al grup Category -- qualsevol pàgina pot definir una "categoria" de pàgines que l'enllacen.

Una administradora pot substituir el nom inicial del grup de categories "Category" per un altre, definint la variable $CategoryGroup al fitxer config.php. (Un canvi d'aquest estil s'hauria de fer durant la configuraciĂł inicial d'un wiki; fer el canvi a un wiki amb continguts pot donar problemes amb els llistats de pĂ gines a no ser que es torni a desar cada pĂ gina que estĂ  en una categoria.)

Una autora pot fer un enllaç a una categoria sense afegir-la a la categoria usant [[ {Category.Tema$PageUrl} | Tema ]]. Així es crearà un enllaç com el que es crearia amb [[!Tema]] sense que la pàgina sigue considerada part de la categoria Tema.

RecapitulaciĂł

Afegint l'enllaç [[!Tema]] a una pàgina, aquesta apareixerà llistada automàticament a Category.Tema (sempre que Category.GroupFooter mantingui la configuració per defecte). Així doncs, podeu crear una pàgina que crei automàticament un llistat en ordre alfabÚtic de totes les pel·lícules comentades al vostre wiki creant enllaços [[!Pel·lícules]] a cadascuna de les pàgines amb una pel·lícula; el llistat resultant es trobaria a Category.Pel·lícules .

autores (avançat)

Niuament de categories

Encara es pot traure mĂ©s profit de les categories perquĂš les prĂČpies pĂ gines Category.* es poden col·locar a dintre de categories! Seguint un excel·lent exemple de John Rankin, suposem que tenim les segĂŒents pĂ gines de pel·lĂ­cules a les categories llistades a la part dreta:

Peli.DotzeHomesSensePietat [[!Drama]] [[!Crim]] [[!1957]]
Peli.ElSeteSegell   [[!Drama]] [[!Fantasia]] [[!1957]]
Peli.CapALaEternitat   [[!Documental]] [[!2010]]

Ara, podem crear Category.Drama, Category.Crim, Category.Fantasia, i Category.Documental, i a cadascuna d'aquestes pĂ gines posem [[!GĂšnere]]. A Category.1957 i Category.2010, hi possem [[!Any]].

Així, quÚ veurem a la pàgina Category.GÚnere? Enllaços a "Crim", "Drama", "Documental", i "Fantasia", perquÚ estan a la categoria GÚnere. Quan cliquem en algun d'aquestos enllaços, veiem totes les pel·lícules d'una d'aquestes categories. Del mateix mode, si cliquem a Category.Any, veiem enllaços a "1957" i "2010", cadascun dels quals, al seu temps, mostra la llista de pel·lícules per a eixe any.

Per Ășltim, a Category.GĂšnere i Category.Any podem ficar-hi [[!Categoria]], que les convertirĂ  en les categories mĂ©s altes a les quals hi podem arribar des de la pĂ gina Category.Categoria. Voila, com a resultat tenim una "jerarquia" instantĂ nia:

Category.Categoria
    Category.GĂšnere
        Category.Crim
            Peli.DotzeHomesSensePietat
        Category.Drama
            Peli.DotzeHomesSensePietat
            Peli.ElSeteSegell
        Category.Documental
            Peli.CapALaEternitat
        Category.Fantasia
            Peli.ElSeteSegell
    Category.Any
        Category.1957
            Peli.DotzeHomesSensePietat
            Peli.ElSeteSegell
        Category.2010
            Peli.CapALaEternitat

Tanmateix adoneu-vos-en que no Ă©s una jerarquia "estricta" --qualsevol pĂ gina o categoria pot aparĂšixer simultĂ niament a mĂșltiples categories. Per exemple, Category.Documental podria pertĂ nyer a GĂšnere i a la categoria de mĂ©s alt nivell.

Cada pàgina de categoria pot tenir continguts abans del llistat de pàgines que hi pertanyen, per exemple, per a donar una descripció del que hi ha a la categoria. (O es pot deixar buid, que també va bé.) També pot contenir associacions amb pàgines relacionades (referÚncies del tipus "vegeu també"). Per exemple, a un wiki sobre turisme, la categoria "mitja pensió" pot contenir una referÚncia "vegeu també" a la categoria "amb menjars".

administradores (intermedi)

El funcionament intern de les categories

L'Ășs del grup Category com a magatzem per a totes les categories es determina definint la variable $CategoryGroup, i la marca especial [[!Tema]] s'activa cridant la funciĂł Markup():

SDV($CategoryGroup,'Category');
Markup('[[!','<links','/\[\[!([^\|\]] ?)\]\]/',
  "<span class='category'>[[$CategoryGroup/$1]]</span>");

Trobar una bona estructura per a les categories

La part mĂ©s complicada en l'Ășs de categories Ă©s triar un bon vocabulari. Les responsables del contingut poden seguir la Guia d'estil per al desenvolupament i establiment del thesauri monolingĂŒe (ISO 2788-1986) i la Guia d'estil per al desenvolupament i establiment del thesauri multilingĂŒe (ISO 5964-1985). Les qĂŒestions que cal plantejar-se sĂłn:

  • si l'esquema existeix i es pot tornar a usar.
  • nombre de nivells als esquemes amb mĂșltiples nivells (ni massa generals, ni amb massa profunditat -- p.ex. 3)
  • nombre de categories per pĂ gina (ni massa, ni massa poques -- p.ex. 3)
  • Ășs consistent del singular ([[Mercuri]] Ă©s un [[!planeta]]) o del plural ([[Mercuri]] Ă©s a la categoria [[!planetes]])
  • desambiguaciĂł i Ășs de frases ([[!instruments musicals]] i [[!instruments mĂšdics]]) o Cookbook:Subpage Markup ([[!Musicals*Instruments]] i [[!MĂšdics*Instruments]])

O deixar que la gent usi aquells termes de categoria que li semblen més encertats. Amb el temps anirà apareixent un vocabulari (o "folksonomy").

Mostrar una llista de categories

Per a mostrar una llista de totes les categories es pot fer un llistat de les pĂ gines que hi ha al grup de categories. Per exemple la segĂŒent directiva mostrarĂ  les pĂ gines que hi ha al grup Category, es convenient ficar-la a la pĂ gina Category.Category?, o qualsevol altra pĂ gina:

(:pagelist group=Category list=normal fmt=#title:)

PerĂČ hi ha un problema: El fet d'afegir l'enllaç de categoria, tot i que si el seguim mostrarĂ  el llistat corresponent, no crearĂ  la pĂ gina amb la categoria!
Es pot afegir el segĂŒent codi al fitxer config.php per a que les pĂ gines de categoria es crein automĂ ticament al grup 'Category':

$AutoCreate['/^Category\./'] = array('ctime' => $Now, 'text' => $page['text']);

Podeu canviar 'Category' amb el nom del vostre grup per a les categories. TambĂ© podeu afegir mĂ©s definicions per a mĂ©s grups de categories, cosa que pot resultar Ăștil si useu una recepta com Cookbook:Tagger que permet l'Ășs de diversos grups per a categories.

Vegeu també EditVariables#AutoCreate?



TraducciĂł de PmWiki.Categories(approve sites) - PĂ gina original a PmWikiCa.Categories(approve sites) - Backlinks