Manual sobre PHP NUKE 5.0 por Marc Vaquer Crusat.
Aunque ya estamos por la versión PHP NUKE 5.6, este manual sigue teniendo la mayoría de los datos validos tambien para las versiones posteriores
Autor: Marc Vaquer Crusat.
Título: PHP NUKE 5.0
PHP NUKE 5.0
PHPNuke es una alternativa GPL a todos los productos comerciales destinados a crear portales para comunidades virtuales.
Como la mayoría de
este tipo de proyectos nació como una herramienta casera de un programador
(Francisco Burzi, fbc@mandrakesoft.com)
en 1998. En la actualidad está patrocinado por Mandrake Soft y es
seguramente el mejor motor de portales que hay dentro el mundo GPL. El
patrocinio de Mandrake fue vital, ya que ahora el autor puede dedicarse
al 100% al proyecto. Este hecho se nota a la hora de sacar nuevas
versiones, que vienen con más mejoras y con menos espacio de tiempo entre
ellas.
La página Web del PHPnuke es un buen ejemplo de lo que ofrece.Ver ilustración 170 Kb.
VARIANTES PHP-NUKE
Hay usuarios que viendo algunas debilidades en el PHPNuke han decidido sacar su propia
versión de PHPNuke, intentando potenciar lo que para ellos era una debilidad.
Aunque no es el objetivo de este artículo analizarlos, si que los nombraremos para que el
lector sepa cuales son y que ofrecen de nuevo:
- php-j00k
: El autor consideró que PHPnuke ofrecía poca expansibilidad, al menos todo lo que el desearía. Este proyecto está basado enteramente en PHPnukepero incrementa la facilidad para programar y instalar Add-ons (añadidos).
- PHP-Talo: Es una reescritura total del PHPnuke desde cero para corregir sus errores y construir una interfaz modular para los añadidos. Realmente parece mejor que el propio PHPNuke, pero no tiene muchos seguidores.
- >Post-Nuke: Este es otro motor basado en PHPnuke 5.0.
Básicamente es un PHPnuke 5.0 más moderno. Ha portado todas las
partes estáticas del PHPNuke a tecnología CSS y ha mejorado varias
partes. El autor (John Cox) es un Web master que había realizado
varios de los mejores tutoriales y artículos sobre PHPnuke que se
encuentran en la red, además de ser uno de los principales difusores de PHPNuke.
Ahora él mismo ha lanzado su propia versión. Post-Nuke es el
derivado de PHPnuke que está cogiendo más adeptos y se está
convirtiendo en un posible competidor. La verdad es que hubo una pelea
entre los dos autores, y Cox decidió salir por su lado, llevándose
muchos Nukeros. Además, ha abierto el código por CVS,
permitiendo que otros programadores trabajen en el proyecto. Al autor de PHPnuke
le gustar trabajar sólo. Si miraseis las news, veríais que parece
una guerra entre críos. Otra guerra como las que estamos acostumbrados los
que llevamos tiempo en el mundo GPL. Realmente de cara al Web
master (que no va a programar nada), es igual uno u otro, y aun es
pronto para decidir quien será el mejor.
PostNuke es el competidor más directo de PHPnuke.
Hermanos pero enemigos.Ver ilustración 279 Kb.
QUE OFRECE PHP-NUKE
PHPnuke no ofrece ningún servicio que no hayamos visto
en la mayoría de portales: noticias, buscador, encuestas, etc. Entonces, que
tiene de bueno el PHPNuke? Pues que lo tiene todo integrado. Instalando
un solo software tienes todos los servicios que puede necesitar cualquier web
master en su portal. Con PHPNuke no hace falta instalar un
paquete para cada cosa.
De hecho, el autor
empezó su trabajo partiendo de herramientas individuales ya escritas en PHP:
ThatWare, File Manager, Web Links Hacks, Faq Manager, Download Manager, y
Multi Tier admin. Al autor hay que agradecerle el trabajo que ha realizado
juntando todo estos paquetes en uno solo.
Por la web se puede
leer a menudo que PHPNuke es la herramienta para los Web masters
gandules (o listos).
No solo incorpora
todo tipo de servicios, sino que además todo es administrable vía web.
Los servicios que
incluye son:
- Sección de artículos (Stories).
- Sección de encuestas (Polls).
- Sección de Preguntas y respuestas (FAQs).
- Directorio tipo Yahoo (Web links).
- Buscador.
- Sección de Downloads.
- Secciones especiales (artículos que no salen en la Home).
- Sección de temas (Topics). Sirven para clasificar los artículos. Puedes acceder a los artículos por tema.
- Gestión de usuarios registrados (Accounts). Los usuarios pueden personalizar la página.
Todo es
administrable desde la Web. Realmente te pierdes entre todas las
opciones que tiene. Incluso lleva un
módulo para actualizar los ficheros de la web a través del navegador. De
esta forma puedes subir todos los ficheros (gif, jpg, htm)
que componen tu web con un navegador. Este servicio es muy útil en hostings
donde no se dispone de acceso telnet.
PRE-INSTALACIÓN
Los requerimientos para instalar el PHPNuke 5.0 son los siguientes:
- PHP 4.X.X.
- MySQL 3.2X.XX.
- Apache 1.3.X con el módulo PHP 4 con soporte MySQL.
Naturalmente PHPnuke
es tan multiplataforma como lo son los anteriores. Podemos encontrar PHPNuke
en plataformas Solaris, Windows NT y Linux.
Todas las páginas PHP
son con extensión .php, y PHPNuke entiende que la página por
defecto en un directorio es index.php. Tenerlo en cuenta en la
configuración del Apache.
La instalación no es
nada compleja una vez tenemos instalados los paquetes anteriores.
INSTALACIÓN (Linux-Unix)
Una vez tenemos los
paquetes requeridos instalados y funcionando seguimos los siguientes pasos:
- Nos conectamos a http://www.phpnuke.org y nos
bajamos el paquete tar.gz desde la sección de downloads (ilustración
3): PHP-Nuke-5.0.tar.gz o posterior.
Desde
la home del PHPnuke podemos bajarnos todo lo necesario.Ver ilustración 201 Kb.
- Nos logueamos en el servidor como root.
- Descomprimimos en un temporal el fichero. El resultado son dos directorios: /html y /sql.
>pwd
/tmp
>tar xvzf PHP-Nuke-5.0.tar.gz
|
- Creamos primero la base de datos, a la que llamaremos nuke.
- Creamos las tablas que utiliza el PHPnukepara funcionar. Para eso utilizaremos el fichero nuke.sql del directorio /sql. Con esto tendremos configurada la base de datos.
- Copiamos los ficheros y directorios de /html
al directorio que tengamos compartido para nuestra web.
>cp –R /tmp/html /var/www/html/phpnuke
|
- En estos momento en una instalación normal, PHPNuke ya tendría que funcionar.
En caso que no hagáis nombrado la base de datos como nuke o que la base de datos esté en otro servidor,
tendréis que modificar el fichero config.php que está en el directorio raíz del PHPNuke (donde habéis copiados los ficheros).
La conexión a la base de datos se tiene que redefinir en las siguientes variables:
################################################
# Database & System Config
#
# dbhost: MySQL Database Hostname
# dbuname: MySQL Username
# dbpass: MySQL Password
# dbname: MySQL Database Name
# system: 0 for Unix/Linux, 1 for Windows
#################################################
$dbhost = "localhost";
$dbuname = "root";
$dbpass = "";
$dbname = "nuke";
$system = 0;
$prefix = nuke;
|
La variable $prefix sirve si
queremos guardar otra instalación de PHPnuke en la misma base de datos.
En ese caso las tablas tendrán que tener un nombre diferente con otro prefijo. Este prefijo se define en esta
variables. Los nombres de las tablas se tendrán que editar en nuke.sql
previo a crear las tablas.
Desde el File Manager podemos subir y bajar ficheros sin necesidad de
telnet o ftp.
- Si queremos utilizar el File Manager
Ver ilustración 89 Kb. para poder actualizar ficheros desde Web,
tenemos que dar permisos 666 a todos los ficheros y 777 a
los directorios, sino no podremos. No hace falta asignar permisos a todo
el árbol de directorios, sino sólo a los directorios y fichero factibles
de actualizar. De todas formas recomendamos pasar estos derechos de
archivos y ficheros aunque no se
vaya a utilizar el File Manager. Así evitamos sorpresas en el
futuro.
- Probamos la Web apuntando nuestro
navegador a la URL que tengamos asignada el PHPnuke (por ejemplo http://belit/phpnuke/index.php).
Nos tiene que salir la Home Page del PHPNuke con unos datos
por defecto.
- Probamos la administración (ver
ilustración 5). Para eso apuntamos a la página admin.php (por
ejemplo http://localhost/phpnuke/admin.php).
Entramos como login:God, password:Password. Hay que respetar las
mayúsculas y minúsculas.
Aquí podremos ver la página principal de administración.
POST-INSTALACIÓN
La configuración del
PHPNuke es mucho más compleja y extensa que la instalación. Aunque más
que configuración es personalización, ya que la instalación del PHPNuke
deja una configuración por defecto.
Aquí comentaremos
las tareas más comunes que se realizan después de instalar el PHPnuke.
CAMBIAR EL PASSWORD DE ADMINISTRADOR
La primera tarea
post-instalación es cambiar el password del usuario administrador God
(no queremos que cualquier extraño los modifique el contenido de nuestra
página). Para ello entramos en la página de administración admin.php.
Entramos con el login y password por defecto de administrador.
Luego cliqueamos sobre la opción “Edit Admins” del menú
principal. A continuación tenemos el listado de usuarios administradores.
Clicamos sobre el “Modify Info” del usuario God y entramos el
nuevo password sobre la casilla y confirmación correspondiente.
Finalmente aceptamos pulsando en “Save”.
PREFERENCIAS
Nos vamos a la
opción de menú “Preferences” y visitamos las opciones de configuración
del Web Site. Aquí podemos cambiar las opciones que implican todo
la Web. Si queremos administrar opciones que implican una opción muy
concreta
Ver ilustración 131 Kb.
Desde preferencias modificamos las opciones generales.
Aquí podemos modificar las siguientes secciones:
- Información general (ilustración 6). Los items más interesantes son:
- Nombre de la Web.
- URL
- Logo Slogan del site
- Email del administrador.
- Número de artículos en la página principal.
- Número de artículos en la página de artículos viejos.
- Número de artículos en la página del top ten.
- Activación del Ultramode.
Después comentaremos en que consiste.
- Permitir a usuarios anónimos escribir
comentarios sobre artículos o cualquier contenido.
- Seleccionar el Theme. Más sobre
esto en los siguientes apartados.
- Elegir el lenguaje para las páginas.
Aquí podemos cambiar el idioma de las partes estáticas de las páginas.
- Formato de las fechas. Por defecto en
formato americano (en_us). Podemos cambiarlo a español (es).
- Opciones de los banners. Items que contiene:
- Activación de banners. Si los
activas, verás que al recargar la página de administración tendrás una
nueva opción llamada “Banner Administration” para gestionar
los banners. La administración de banners contiene pocas
funcionalidades, pero suficientes.
- IP de tu host. Aquí introduces
tu IP para que no se cuenten los clicks sobre el banner.
De esta manera sabemos que los clicks vienen sólo de los
visitantes. Muy útil de cara utilizar los banners de forma
comercial.
- Mensajes de pie (ver ilustración 7). En
esta sección podemos configurar los 4 pies que aparecen en todas las
páginas de nuestro Web site. Podemos incluso dejarlos en
blanco. No es conveniente llenarlos mucho.
Ver ilustración 137 Kb.
Existen 4 pies de página configurables.
- Backend. Más adelante comentaremos con más
detalle en que consiste el sistema backend.
- Título. Título del Backend,
normalmente el mismo que el nombre de la Web.
- Idioma del backend.
- Configuración de la sección de links de
la página principal.
- Número de links por página. Por
defecto 10.
- Número de hits para que un
determinado link sea considerado popular.
- Número de hits que salen
listados como nuevos.
- Número de hits listados como
mejores.
- Número de links que aparecen en
la página de búsqueda.
- Permitir a los usuarios anónimos de
añadir nuevos links. Por defecto si.
- Opciones de envío de mails al
administrador cuando hay un nuevo artículo.
- Enviar emails con cada nuevo
artículo enviado.
- Email donde enviar el email.
- Concepto del email.
- Cuerpo del mensaje.
- Quien lo envía (From).
- Opciones de moderación Ver ilustración 96 Kb.. No funciona correctamente de momento. Dejar en No moderation.
La moderación de los comentarios aún no funciona.
- Opciones de comentarios.
- Limite de comentarios. Por defecto 4096 bytes. Si el comentario es mayor que esta cantidad entonces sólo
aparece un resumen del comentario con un link para ver el texto
completo.
- Nombre que se le da al usuario anónimo.
- Opciones de encuestas.
- Escala de la barra de resultados. Se
refiere al gráfico que muestra los resultados de las encuestas. Por
defecto 1.
- Permitir a los usuarios votar más de
una vez. Si respondes si, los usuarios podrán votar tantas veces como
quieran. Si respondes no, se establece una cookie que permite
votar una vez cada 24 horas. En caso que salieran varias encuestas
diferentes en las mismas 24h sólo podrían votar en una.
- Opciones de gráficos.
- Paths a los directorios que contienen los gráficos. Los paths
son relativos a los themes.
- Activar gráficos en el menú de administración. Si es
que no, sólo aparecen textos.
- Opciones varias.
- Número de artículos en los listados de
administración. Por defecto 20.
- Longitud mínima del password de los usuarios.
- Activación de los referers (algo
así como los redireccionantes). Cuando está activado, el sistema
guarda todos los accesos que vienen a través de links (o banners)
de nuestra página situados en otras páginas. Con los referers
podemos saber quien tienen enlaces a nuestra página.
- Número de referers que guardamos
en nuestra base de datos.
- Activar comentarios en las encuestas.
Si establecemos si, los usuarios pueden introducir comentarios cuando
responden a la encuesta, y responder comentarios de otros usuarios.
SECCIONES ESPECÍFICAS
Además de las
preferencias generales tenemos otras 16 opciones en el menú principal de
administración. En estas opciones podemos administrar las secciones relativas a
temas específicos del PHPnuke.
Estas opciones son:
- Nueva noticia: para
añadir noticias a la página principal de nuestro portal. Podemos incluso
programar la aparición de la noticia en el portal (útil para cuando
marchamos de vacaciones y queremos hacer creer que el portal sigue vivo).
El
gestionar noticias es la función principal del PHPnuke.Ver ilustración 118 Kb.
- Bloques: las diferentes partes de las
páginas de nuestro portal se llaman bloques. Desde esta opción podremos
añadir, modificar, eliminar o recolocar un bloque del portal.
- Descargas: como todo buen portal, PHPnuke
tiene una zona para descargas. Aquí podremos añadir nuevas categorías para
poder después colgar ficheros en ellas. Los visitantes podrán después
bajarse estos ficheros.
- Editar usuarios: opción con la que
podremos administrar las fichas de los usuarios registrados en nuestro
portal.
- Efemérides: Podemos añadir desde aquí
una efeméride para un día/mes/año determinado. Desde aquí podemos
programar las efemérides de todo el año.
- Administrador de archivos: Nos permite
navegar, subir y bajar los ficheros de nuestro portal desde un navegador.
Para poder subir ficheros, antes deben darse los derechos adecuados al
sistema de ficheros (ojo). Podemos utilizar esta opción para subir los
ficheros de Descargas.
- PUF: Las PUF son las FAQ de
nuestro portal. Primeros tenemos que añadir una categoría y dentro de ella
colgar las preguntas y respuestas.
- Mensajes: Los mensajes son avisos que el
administrador del portal tiene para informar a los usuarios. Para definir
el aviso, tienes que indicar los días de duración del aviso y a quien se
tiene que enseñar: a todo el mundo, usuarios anónimos, usuarios
registrados o administradores.
- Editar admins: aquí debemos
cambiar el password del administrador God y si lo deseamos,
añadir nuevos administradores para nuestro portal.
- Referencias HTTP: en este
apartados podremos ver quien nos referencia a nosotros mediante enlaces.
La verdad es que no funciona demasiado bien, y la lista se hace inmensa.
La mejor opción es desactivar este apartado en la opción de Preferencias.
- Reseñas: Las reseñas son descripciones de
productos y servicios de otros portales. Sirven básicamente para cuando te
haces asociado de webs tipo Amazon o Ibazar.
Las
encuestas es el servicio más divertido de PHPnuke.Ver ilustración 120 Kb.
- Secciones: las secciones son categorías
de noticias especiales. Normalmente son contenidos grandes como artículos,
revisiones, howtos, o cualquier texto grande que de vez en cuando
incluyamos y que queramos categorizar. Dentro estas secciones podremos
añadir los artículos.
- Encuestas/votaciones (ver ilustración
10): aquí es donde podremos añadir y borrar las encuestas de nuestro
portal. Podemos tener varias encuestas activas en un determinado momento,
pero sólo la última es la que se visualizará dentro el bloque de encuestas
de la home del portal.
- Manejador de temas: En todos los
portales tipo Slashdot podemos ver que siempre clasifican la
noticia con un icono, y siempre se guardan bajo la categoría representada por ese icono.
Esos iconos son los temas. Los temas son una parte muy importante dentro
un portal, porqué definen la temática de éste. Para añadir un tema nuevo
hace falta un nombre interno, una descripción que funciona como una
alternativa al icono, y el icono que representa el tema (un .gif
normalmente).
- Enlaces: como todo portal, el PHPnuke
incorpora una sección donde poner enlaces a otras webs. Algo así
como un directorio tipo Yahoo. Naturalmente estos enlaces deben estar
categorizados.
- Logout/salir: opción para salir del menú
de administración.
LOS BLOQUES
Los bloques
representan las piezas principales que forman un portal PHPnuke.
Comúnmente conoceréis los bloques como esos recuadros que hay en los lados de
la home page.
Mediante la
administración vía web podéis configurar cualquier parámetro de estos bloques
Ver ilustración 163 Kb..
Los bloques son los ladrillos del portal.
Hay dos tipos de bloques:
- Bloques fijos: son los que vienen
predefinidos en el sistema. Por ejemplo: el bloque de encuestas, o el
bloque con el menú principal. Estos bloques no pueden eliminarse, como
mucho ser desactivados.
- Bloques de usuario: son los bloques que
cada administrador ha añadido por su cuenta. Estos bloques pueden ser
eliminados físicamente. Los bloques de sindicación de contenidos también
están contenidos dentro esta categoría.
Todos los bloques
pueden ser editados (modificar su contenido) o activados y desactivados. Con
activar/desactivar un bloque indicamos que aparecerá o no en la home de
nuestro portal.
Los bloques tienen
las siguientes propiedades:
- Contenido. El contenido puede ser un
texto HTML, Javascript o incluso una URL que sindique contenido.
- Título: Es el título del bloque que sale
siempre resaltado en pantalla.
- Posición: La posición puede ser derecha
o izquierda según donde queramos situar el bloque.
- Peso: Cada bloque tiene un peso
específico que indica la prioridad de aparición del bloque. Cuanto menos
peso más arriba aparecerá. El bloque número 1 es que más arriba sale.
- Estado: Activo o Inactivo.
PHPnuke tiene un fichero de backend para ofrecer noticias a otros portales.
Ver ilustración 58 Kb.
BACKEND Y ULTRAMODE
Un Backend es
simplemente un script creado en cualquier lenguaje (PHP, Perl, Python)
que nos permite colocar noticias ajenas en nuestro sitio Web. Es una
opción muy potente pero que pocos web masters de portales
realizados con PHPnuke utilizan.
Hoy en día a este
concepto se le llama sindicación, es decir, un portal cede contenidos a
otro.
Funciona de manera
muy sencilla: simplemente introducimos unas líneas de código (Javascript,
perl, SSI, etc) en nuestro portal y obtenemos las noticias de
otro website (slashdot, freshmeat...).
PHPnuke permite sindicar noticias mediante dos
sistemas (más bien ficheros): backend.php y ultramode.txt.
El primero envía las noticias en
formato XML (ver ilustración 12). El segundo ofrece las noticias en
formato texto y requiere formateo en el portal receptor. Normalmente se utiliza
el ultramode.txt por ser más general. Ultramode.txt al ser más
general, puede trabajar con cualquier sistema de portales, en cambio backend.php
está más orientado a sistemas que sean PHPnuke. Aquí sólo comentaremos
la sindicación mediante ultramode.txt.
El problema con la sindicación
es que muchos de los principales portales de noticias (slashdot, freshmeat)
utilizan sistemas de portales propios, no sistemas genéricos como PHPnuke.
Entonces, cada uno sindica los contenidos en el formato que quiere, y es el
receptor el que se tiene que adaptar. Por suerte, tienden a unificarse gracias
al XML. La mayoría como slashdot disponen de una versión ultramode.txt
(ver ilustración 13) y otra en formato XML.
Aquí
vemos el ultramode de Slashdot.
Ver ilustración 57 Kb.
CONFIGURACIÓN ULTRAMODE
Resaltamos que la
sindicación por XML en el Backend.php siempre está
disponible. Es la sindicación por texto que no siempre lo está. Para activarla
realizamos los siguientes pasos:
Activamos el ultramode
entrando como root y editando el fichero config.php o mediante la
administración Web. En el primer caso haríamos:
# vi config.php
$ultramode=1;
#Activamos el Ultramode
|
Ahora comprobamos
que exista el fichero ultramode.txt. Si no existe lo creamos.
Seguidamente damos
los permisos pertinentes para que cada vez que se añada una noticia, se pueda
escribir en el fichero. En las FAQ de PHPnuke indican permisos
666 pero en sites relacionados sugieren 777. En principio con 666 nos basta.
# chmod 666 ultramode.txt
|
Ahora mediante /admin.php
añadimos una nueva noticia. No hace falta ninguna opción especial.
Una vez enviada la
noticia, ya debería estar incluida en el fichero ultramode.txt
podemos verlo con un
En estos momentos tu
portal está preparado para que otros puedan sindicar tus artículos mediante
formato texto.
COLOCAR TITULARES DE OTRAS WEBS EN TU PORTAL
Hemos hablado
siempre que el trabajo de sindicar contenidos tiene más trabajo en la parte
cliente que la servidora, ya que el cliente tiene que interpretar el fichero
sindicado y generar código HTML a partir de éste.
Si queremos coger
los contenidos de por ejemplo freshmeat podemos hacer dos cosas:
- Ponernos en contacto con freshmeat
para que nos den permiso para coger su fichero, y que ellos nos indiquen
que fichero es, y como está formateado. A partir de ahí generar código PHP
que interprete ese formato y muestre los titulares en nuestro portal.
- >Bajarse scripts de webmasters
que ya hayan programador el interfaz en PHP para recoger las
noticias de freshmeat, y copiarlo en nuestra instalación de PHPnuke.
La primera solución
no hace mucho era casi la única. Actualmente existen webs como http://swamp.chl.chalmers.se/backends/
(ver ilustración 14) que se dedican a recoger scripts
adaptados a PHPnuke para coger contenidos de portales famosos. Cualquier
portal de news famoso tiene su backend en esta web. Nosotros
encontramos todos los portales que conocemos, más muchos otros. Incluso existe
un backend que escoge los portales de forma aleatoria. Entonces,
recomendamos partir de la segunda opción.
Aquí tenemos cientos de backends conocidos preparados para utilizar.
Ver ilustración 212 Kb.
Bajamos por ejemplo
el fichero de freshmeat (freshmeat.php3.gz). Lo descomprimimos en
la raíz de nuestra instalación de PHP. Tenemos ahora un fichero llamado freshmeat.php3
(si hace falta lo renombramos a .php, según nuestra configuración) que
donde lo incluyamos dentro el PHPnuke, saldrán los titulares de Freshmeat.
Si lo incrustamos en un fichero PHP pondremos:
include("freshmeat.php3");
?>
|
Si seguimos nomenclatura SSI es:
De esta manera, si
incrustamos la línea PHP en header.php, tendremos los titulares
en la cabecera. Si la incrustamos en footer.php la tendremos en el pie
de página. El fichero freshmeat.php se encarga de interpretar el backend
de freshmeat.net y mostrarlo en formato HTML.
COLOCANDO LOS TITULARES EN BLOQUES
Normalmente en las webs
tipo PHPnuke, los titulares de otros portales de noticias salen en las
columnas de la izquierda o derecha de la home. El problema viene que
estos bloques se guardan en la base de datos. No son ficheros .php donde
podamos incrustar las líneas del apartado anterior.
Los bloques se
configuran mediante la administración vía Web. Si en el texto del bloque
añadiésemos por ejemplo el include de freshmeat, se interpretaría
como texto, no como código PHP.
PHPnuke
trae multitud de backends en bloques predefinidos.Ver ilustración 208 Kb.
El autor de PHPnuke
se dio cuenta del problema que reportaba este hecho. Entonces el autor trae preconfigurados
unos cuantos backends, sobretodo los más famosos (si! Freshmeat
está ahí, ver ilustración 15).
Si entramos en la
administración web podemos ir a la administración de bloques y allí
añadir nuevos bloques de titulares simplemente seleccionado que backend
queremos.
También podemos
añadir nuevos backends si sabemos que el portal origen tiene un fichero RSS/RDF
adecuado. El formato RSS/RDF es un formato XML que definieron los
creadores de los portales más famosos para intercambiarse contenidos. El
fichero backend.php que exporta nuestra instalación de PHPnuke es
un fichero de este tipo. Es decir, que cuando nuestro portal sea muy famoso, slashdot
y freshmeat podrán mostrar nuestros titulares.
LOS THEMES
Los themes o
temas son las diferentes apariencias que puede tener el PHPnuke. El tema
por defecto se configura en el apartado de preferencias de la administración
por Web. Los usuarios registrados pueden cambiar ese tema por defecto al que
prefieran.
Los themes
pueden programarse, y cada webmaster puede fabricarse el suyo. Los themes
se almacenan en el directorio /themes, y cada tema es un subdirectorio.
Normalmente podemos definir un theme como un conjunto de estilos e
imágenes.
En la siguiente url:
http://www.dinerminor.com/sections.php,
podéis encontrar todo tipo de tutoriales sobre PHPnuke y sobretodo referentes
a la creación de themes (ver ilustración 16). Veréis que los mejores
tutoriales sobre PHPnuke están realizados por el autor de la competencia
del PHPnuke (el PostNuke): John Cox.
Aquí
tenemos los famosos tutoriales de themes de J.Cox.
Ver ilustración 273 Kb.
Atención, que por
las news se habla mucho de los problemas que da el PHPnuke con
los themes realizados en versiones antiguas. Nosotros mismos lo sufrimos cuando al actualizar la versión de PHPnuke
4 a la 5, algunos Themes que habíamos instalado dejaron de
funcionar correctamente.
ADD-ONS
Una de las
habilidades de PHPnuke es que ofrece una interficie para poder
interactuar con él. Además está programado en PHP y trabaja contra una
base de datos popular como MySQL.
Cumpliendo estos
requisitos, resulta un sistema muy fácil de ampliar. Algunos usuarios que
necesitaban de nuevas funcionalidades, decidieron programarlas ellos mismos,
normalmente en forma de módulos que cubrían una cierta necesidad.
Estos módulos son
los Add-ons. Podemos encontrar Add-ons de lo más variados: chats,
motores de búsqueda, webmails, estadísticas, etc. La mayoría de ellos
son de una calidad aceptable y se pueden bajar directamente de la home
del PHPnuke (ver ilustración 17).
Al igual que los themes,
los Add-ons suelen estar muy ligados a una determinada versión de PHPnuke.
De todas formas, nosotros no hemos encontrado problemas en los Add-ons
que teníamos instalados (Webmail y Chat) cuando actualizamos a PHPnuke
5.0, pero en las news pueden leerse mensajes de usuarios que han tenido
problemas de actualización.
Ver ilustración 190 Kb. En
las páginas de PHPnuke.org podemos encontrar todos los Add-ons disponibles.
Personalmente,
nosotros estamos esperando que un colaborador termine el Add-on de E-Commerce
que esta desarrollando. La verdad es que un sistema de portales más un E-Commerce,
todo gratuito, es un entorno vendible a cualquier PYME.
GESTIÓN DE ANUNCIOS
PHPnuke también trae de serie un gestor de banners
(ver ilustración 18). Accedemos a él mediante la administración web,
y primero tenemos que activar el servicio en Preferencias.
No es ninguna virguería, pero tiene lo básico que tiene que tener:
- Gestión de clientes.
- Gestión de banners de cada
cliente.
Puedes gestionar el
número de impresiones y te muestra estadísticas de los clics obtenidos.
No puedes programar
el número de clics, sólo el de impresiones. Además, cuando das de alta
el banner, inmediatamente empiezan las impresiones: no puedes programar
campañas temporales. Igualmente, los banners no tienen peso, todos se
imprimen con igual frecuencia. Tampoco hay ningún tipo de segmentación según el
tipo de usuario.
Ver ilustración 168 Kb. La
gestión de banners es un punto débil del PHPnuke.
CONCLUSIÓN
PHPnuke 5.0 es un entorno que te permite montarte y
configurarte un portal en pocas horas. La verdad es que el PHPnuke es de
lo mejorcito que hay en el mundo GPL. Y además es muy versátil: puede
utilizarse para un portal de noticias, como un simple gestor de contenidos,
directorio de URLs, download site...
PHPnuke es pues un conglomerado de muchas otras
aplicaciones web. El autor ha hecho un gran trabajo de integración y de
programación. Pero es normal que haya algunos bugs, y que haya muchos detalles
por refinar.
Lo mejor del PHPnuke
es que todas las herramientas están muy integradas y pueden ser gestionadas
desde una sola interficie web.
Lo de la gestión
integrada parece una tontería, pero para los administradores de sistemas, no
hay peor pesadilla que tener varias bases de datos de usuarios. Vale la pena
tener un solo producto integrado más limitado, que muchos productos más
completos sin integrar, sobretodo de cara costes y tiempo.
Por cierto, mientras
se estaba escribiendo este artículo, ha salido el PHPnuke 5.1. Mandrake
hace trabajar duro al muchacho.