> Manuales > Taller de PHP

Lista comentada de diversos sistemas creados en PHP y MySQL, así como otras bases de datos, para la implementación de un sitio web colaborativo del estilo de una wiki.

Cuando hablamos de una wiki, todos pensamos en la Wikipedia, uno de los proyectos más representativos de la Internet actual: de inmenso tráfico, una comunidad enorme y líder también en las búsquedas de Google. Pero ¿necesitamos implementar ese monstruo si necesitamos una área de wiki en un sitio corporativo o una comunidad pequeña?

En este artículo vamos a explorar varios sistemas de wiki, entre los más populares, que se han desarrollado usando PHP como lenguaje. Entre las diversas propuestas, la mayoría usan MySQL como base de datos, pero también encontrarás otros que usan cualquiera o incluso uno que simplemente usa ficheros de texto, lo que nos puede ahorrar recursos y configuraciones.

Qué es una wiki y qué implica mantenerla

Quizás todos sepamos lo que es una wiki, básicamente un sitio donde los contenidos son editables por parte de los visitantes de una web. En muchos casos pueden editarlos tanto los visitantes anónimos como los usuarios registrados, de modo que el contenido está en manos de la comunidad de personas que usan el sitio web y que puede crecer gracias a la participación de todos.

Las wikis son ideales para entornos de intranet corporativa, puesto que se puede hacer una base de conocimientos en una empresa gracias al aporte de los empleados. También para comunidades abiertas, donde entre todos comparten información y se responsabilizan de ofrecerla rigurosamente actualizada y contrastada.

La idea de una wiki es que se extienda gracias a la colaboración de todos los usuarios, lo que representa una gran ventaja, pero también puede ser fuente de situaciones poco deseables. Como cualquiera es capaz de editar el contenido, es origen frecuente de ediciones incorrectas (desde borrado de datos hasta actualizaciones con información errónea, pasando por la publicación de spam o la réplica de contenidos con copyright). Todo ello hace que para poder mantener una Wiki sea necesario una comunidad fuerte y responsable, pues en caso contrario, en poco tiempo puede perder el control y con ello dar un aspecto de sitio web falto de mantenimiento.

Así pues, cuando pienses en crear un sitio que sea una wiki, por supuesto te interesa evaluar con calma sus interesantes posibilidades, pero también los retos a los que te enfrentas.

Software para crear una wiki en PHP

Existen aplicaciones para wikis en todos los lenguajes más populares usados en el desarrollo web. Elegimos PHP por ser el sistema más comúnmente extendido, soportado en el mayor número de entornos. También el que tiene los mejores sistemas de wiki ya creados y liberados para cualquier tipo de uso.

Nota: En este artículo hemos seleccionado sistemas de wikis de código abierto que nos permitan el uso en cualquier circunstancia. A no ser que se mencione lo contrario, puedes asumir que las wiki que podrás crear con estos sistemas se podrán usar tanto personal como comercialmente.

MediaWiki
Lo más justo es empezar hablando de MediaWiki, la plataforma con la que está implementada la archiconocida Wikipedia. Es un software pensado para un altísimo tráfico, con un despliegue en un cluster de servidores y donde se crean sitios a los que acceden millones de visitantes.

Ojo, como ellos mismos advierten, no es un software pensado para pequeñas necesidades y debes instalarlo sobre servidores potentes, donde tengas bastante espacio de disco y bastante memoria y procesamiento para hacerlo funcionar. Tampoco se comporta especialmente bien para crear wikis privadas, con contenidos restringidos a usuarios autenticados.

MediaWiki está programado en PHP y soporta distintas bases de datos (MySQL, MariaDB, PostgreSQL, SQLite, Oracle). Además tiene diversos requisitos opcionales como GD o Imagemagick para crear thumbnails. Existen extensiones que se pueden instalar de manera separada y documentación para realizar nuestras propias extensiones.

DokuWiki
Dentro de las distintas opciones de wiki populares en PHP, DokuWiki requiere una mención especial porque no requiere base de datos para su funcionamiento. Todos los contenidos son volcados a ficheros de texto, pero no por ello sus posibilidades de edición y funcionamiento son peores.

Sin embargo, por sus características, DokuWiki está más bien indicada para sitios pequeños o medianos, incluso para wikis de acceso privado. Existe una comunidad de creadores de plugins y extensiones para dotar de diversas funcionalidades a DokuWiki.

Tiki Wiki CMS Groupware
Este es un proyecto que no solo nos sirve para crear una wiki, también nos ofrece una serie de servicios adicionales que son útiles para comunidades diversas. La verdad es que es un software con un alcance muy grande: documentos colaborativos, CMS, comercio electrónico, e-learning, comunidades y redes sociales, CRM, etc. Lo puedes usar también simplemente como framework para el desarrollo de cualquier tipo de sitio web.

Usa PHP, MariaDB o MySQL como base de datos, Smarty como motor de plantillas, jQuery como librería Javascript y por debajo, el framework Zend. Sus actualizaciones recientes nos hacen entender que es un proyecto con buena salud.

PmWiki
"P… Madre" wiki para los amigos (qué va, es broma) es un proyecto que también nos implementa una wiki en PHP, de manera bastante avanzada, con características como la plena personalización de plantillas y el control de acceso. Es muy adecuada para hacer una wiki privada, donde se pueda controlar el acceso al sitio completo o implementar un acceso restringido solo en algunas secciones. También tiene un sistema de ampliación de características por medio de lo que ellos llaman "recipes" que no son más que extensiones que cualquiera puede desarrollar.

Además dispone de un historial de versiones que nos hace entender que el proyecto está bastante atendido.

Otras alternativas de wikis PHP

A partir de aquí destacamos otros proyectos que, si no te vale ninguno de los anteriores por cualquier razón, puedes evaluar. Los agrupamos al final para cubrir estas posibilidades, pero no parecen tan recomendables porque sus actualizaciones no son tan frecuentes (y ya se sabe que cuando nos decantamos por usar un software libre, uno de los principales requisitos es contar con una buena comunidad de desarrolladores detrás, aportando mejoras constantemente, así como corrección de problemas de seguridad).

PhpWiki: es un proyecto pequeño y relativamente manejable, cuyo código probablemente puedas entender fácilmente y extender para tus necesidades.

WikiNi: Está entre los sistemas populares, pero su web es en francés, por lo que no sé yo cuan aconsejable será usar en un sitio en español. Aunque quizás lo más complicado sea documentarse para aprender a usarlo.

WackoWiki: Es un proyecto para wikis en multilenguaje y que tiene buena pinta en general, lo que ocurre es que se han pasado dos años sin lanzar una actualización. La última es de 2014, pero la anterior era de 2012.

Sistema de comparación de wikis

Existen muchos sistemas alternativos para la creación de wikis, más de los que te piensas, y construidos en una gran gama de tecnologías y lenguajes. En este artículo creo que hemos recogido los más interesantes y que te pueden dar una gran gama de posibilidades, adaptables a las múltiples características de tu comunidad o negocio, pero queremos destacar un sitio interesante que nos sirve para conocer y comparar software para la creación de este tipo de sitios web.

Se trata de Wikimatrix

Podrás encontrar decenas de motores de wiki y podrás comparar sus características, como los creadores, lenguajes, bases de datos, público objetivo, licencias, sistemas operativos compatibles, traducciones, etc.

Miguel Angel Alvarez

Fundador de DesarrolloWeb.com y la plataforma de formación online EscuelaIT. Com...

Manual