2007/Nodos/Mediawiki/material

De Hackmeeting

< programa HM2007 < 2007/Nodos < nodo:Mediawiki

Adaptación y uso de Mediawiki

David Gómez - contacto: discusión dvdgmz


WIKI

Conjunto de páginas web que puede ser editadas directamente desde el navegador. Las páginas se crean creando un enlace.

groupware - computer supported cooperative work (CSCW) - herramienta colaborativa

colaboración asíncrona - registro de versiones - edición online - integración de aportaciones

MEDIAWIKI

  • 4 niveles de usuario (administrador, burócrata, registrado, anónimo)
  • detección de conflictos en edición simultánea
  • página de discusión junto a cada página
  • comparación de versiones (diff)
  • vigilancia, borrado, bloqueo, renombrado de páginas
  • plantillas para re-aprovechar contenidos
  • categorías para clasificar páginas
  • ...

[subir]


Requerimientos del servidor

Para la actual versión 1.11.0 los requerimientos son:

  • PHP 5 o superior [1]
  • Base de datos [2]; una de las siguientes:
    • MySQL 4.0 o superior
    • PostgreSQL 8.1 o superior (desde MediaWiki 1.8 - requiere plpgsql y tsearch2
    • Ingres 2006 o superior
  • Servidor Apache [3] (también funciona en IIS 6.0, Cherokee y lighttpd).
    • Hardware Mínimo Recomendado: 256MB de RAM, 40MB espacio disco.
  • Otros requerimientos [4] [5]:
    • ImageMagick o GD Library (para re-escalado y manipulación de imágenes)
    • TeX (para mostrar fórumulas matemáticas)
    • Sendmail (para enviar mails desde el sistema)
...

[subir]

Instalación

  • Descargar (última versión estable 1.11.0; 4,7Mb descarga)
  • Copiar al servidor todo el directorio descargado
  • Permisos: permitir escritura en los directorios:
    • config (para la instalación, después se puede proteger)
    • images (para poder subir imágenes)


  • Crear base de datos
    • Config script: si conoces la contraseña del root de MySQL es automático
    • Crear usuario base de datos: (si no tienes la contraseña del root) usando PHPMyAdmin o directamente MySQL:
create database wikidb;
grant create, select, insert, update, delete, alter, lock tables on wikidb.* to 'wikiuser'@'localhost' identified by 'password';
flush privileges;
\q


  • Ejecutar script de instalación (config script [6]) accediendo a la URL desde el browser
    • Algunos datos de configuración:
      • Nombre del wiki
      • Idioma por defecto
      • Licencia contenidos
      • Nombre y contraseña del usuario Sysop
      • Nombre de la base de datos, usuario y contraseña
      • Configuración opciones correo


  • Mover Localsettings: de config al directorio raíz.
    • Proteger: cambiar permisos de Localsettings.php y config/ para que no puedan ser modificados.

¡Ya tenemos el wiki instalado!


...

[subir]


Configuración: Localsettings

En el archivo Localsettings.php contiene la configuración "local" del Wiki que hemos instalado (ver [7] y [8]).

Algunas variables que ya hemos configurado con la instalación:

  • $wgSitename (nombre del wiki)
  • $wgLanguageCode (idioma) - ver directorio /languages -
  • $wgDefaultSkin (apariencia visual, estilos)
  • $wgRightsUrl, $wgRightsText, $wgRightsIcon (licencia contenidos)
  • $wgEnableEmail, $wgEnableUserEmail, $wgEmergencyContact, $wgPasswordSender, $wgEnotifUserTalk, $wgEnotifWatchlist, $wgEmailAuthentication (e-mail)
  • $wgEnableUploads (cargar imágenes)
  • $wgUseImageMagick, $wgUseTeX (uso de software extra)


Logo Wiki

  • (supuestamente) La variable $wgLogo determina la localización del gráfico
Ejemplo:
$wgLogo = "/wikiMo/HMwikiLogo.png";
  • Sino se puede sustituir el logo por defecto: /skins/common/images/wiki.png


Imágenes y archivos


  • $wgEnableUploads = true; para que (siendo usuario registrado) se puedan cargar imágenes
  • $wgUseImageMagick = true; para usar ImageMagick (si no tienes la librería GD)
  • $wgAllowExternalImages = true; para permitir que las imágenes por referencia profunda se muestren en la página
  • $wgFileExtensions = array('gif','png','jpg','jpeg','swf', 'ogg'); La matriz (array) permite definir qué formatos se pueden subir.
  • Otras variables de carga de archivos: http://www.mediawiki.org/wiki/Category:Upload_variables


Usuarios

Ver: http://www.mediawiki.org/wiki/Help:User_rights

  • $wgGroupPermissions combinada con parámetros configura los permisos para grupos de usuarios.
  • Grupos de usuarios:
    • * Cualquiera, incluidos anónimos
    • user Usuarios registrados
    • autoconfirmed Registrados con antigüedad (se determina con $wgAutoConfirmAge) y número de ediciones ($wgAutoConfirmCount)
    • emailconfirmed Registrados con confirmación por mail
    • bot Usuarios con permisos para usar scripts automáticos
    • sysop Administradores, permiso para recuperar páginas, bloquear usuarios y páginas, ...
    • bureaucrat Bibliotecarios, permiso para cambiar status de otros usuarios
Ejemplo:
$wgGroupPermissions['*']['edit']    = false;
$wgGroupPermissions['user']['edit'] = true;
Sólo permite edición a usuarios registrados. Anónimos pueden leer pero no editar.

Los administradores (sysops) y bibliotecarios (bureaucrat) pueden definir los permisos de usuario desde:

Páginas especiales > Configuración de permisos de usuarios



...

[subir]


Uso: Edición y formato de página




...

[subir]

Adaptación: Sidebar, TOC y SiteNotice

  • Sidebar: para editar la barra de navegación del menú (lateral izquierdo) editar como administrador la página MediaWiki:Sidebar
  • Sitenotice: para incorporar un contenido en la parte superior de todas las páginas editar como administrador la página MediaWiki:Sitenotice
  • TOC: oculta o cambia de sitio la tabla de contenidos (TOC) de una página con __TOC___ y ___NOTOC___


...

[subir]

Uso: Plantillas

Plantillas son páginas del wiki cuyo nombre empieza por Plantilla:.

Ejemplo:
[[Plantilla:infobox software]]

Sintaxis: se llaman usando el nombre de la página entre doble clave.

{{nombredelaplantilla}}

Parámetros: pueden contener parámetros a rellenar por el usuario.

Sintaxis uso parámetros
{{nombredelaplantilla|parámetro=blabla}}
En la página de la plantilla tendremos el nombre del parámetro entre triple clave:
{{{parámetro}}}

También puede ser parámetros sin nombre, en cuyo caso usamos números para recogerlos.

{{nombredelaplantilla|blabla}}
En la página de la plantilla tendremos un número entre triple clave:
{{{1}}}

Lo que incluimos y lo que no:

  • La página de la plantilla puede contener contenidos que no se incluyen en la página que la llama. Esto se usa sobretodo para explicar el uso de la propia plantilla.
    • Estos contenidos tienen que estar dentro de la etiqueta: <noinlude></noinclude>
  • También podemos tener contenidos que no se muestran en la página de la planilla pero sí se incluyen cuando es llamada.
    • Estos contenidos tienen que estar dentro de la etiqueta: <inludeonly></includeonly>


Casos de ejemplo

Plantilla:Postitw (para poner notas o post-it's en las páginas)

parámetros: alineación {{{1}}}, ancho {{{2}}}, título {{{3}}}, contenido {{{4}}}
ejemplo de aplicación: Licencias (es)



Plantilla:Es (página en castellano, enlaces catalán e inglés)

Cómo usar plantillas idioma
parámetros: linka (página en catalán) y linken (página en inglés)
ejemplo de aplicación: Arcilla (L) (es)

Plantilla:Ca es (petición traducción catalán->castellano)

ejemplo de aplicación: Communimage (L)



Template:Languages (idiomas a los que está traducida la página)

Usa la sub-plantilla: Template:Languages/Lang
ejemplo de aplicación: Mediawiki.org Help:Templates




Plantilla:Infobox projecte ca (ficha proyecto net.art)

Plantilla:Infobox_sistema_ca (ficha sistema proyecto net.art)

ejemplo de aplicación: http://netart.iua.upf.edu/wiki/index.php/Communimage_%28es%29 Communimage (es)]
ejemplo de aplicación: Glyphiti (es)
...

[subir]


Uso: Categorías

  • Las categorías agrupan páginas del wiki en listados automáticos
    • Se pueden anidar de forma que una categoría sea sub-categoría de otra
    • Se crean creando un enlace a ellas.

Sintaxis:

[[categoría:nombrecategoría]]
  • El mismo enlace dentro de una página sirve para incorporar esa página a la categoría
  • Para enlazar una categoría desde una página sin incluirla en ella usamos ":"

Sintaxis:

[[:categoría:nombrecategoría]]

Casos de ejemplo

Categoria:Síncron (en GERMINADOR wiki)
Categoria:Tecnologies lliures (en GERMINADOR wiki)
Categoria:LAMP (en GERMINADOR wiki)
Combinada con la plantilla: Plantilla:Prop_LAMP que a su vez usa la Plantilla:LAMP



Categoría:Práctica 2 gráficos (en GRFwiki UOC)



...

[subir]


Adaptación: Extensiones

Casos de ejemplo

ParserFunctions

Plantilla:XP (experiencias CCR en GERMINADOR wiki)
ejemplo de aplicación: Jescudef/Cronicas/Pixelfest
ejemplo de aplicación: Pablo_Nebreda/Cronicas/iScribble.net
Plantilla: SíncronML (propuestas participación síncrona)



...

[subir]


Adaptación: Metacaixa

Instalación

Casos de ejemplo

Portada Viquipèdia-ca


Portada GERMINADOR Wiki
Proyecto PLANTER (en GERMINADOR wiki)
Taller net.art UOC (en GERMINADOR wiki)
Explicación Planilla:Metacaixa (en GERMINADOR wiki)


wiki-navigation
project-navigation