La nueva versión de Pligg 2.0 utiliza el template boostrap de Twitter
Desde hace unas semanas estoy probando una migración de la versión de Pligg 1.2.2 a la nueva versión 2.0 con el boostrap de Twiter y he encontrado una serie de problemas que iré detallando en este artículo para ir solucionando los inconvenientes.
Vamos a hacer realizar primero una actualización (realmente es una migración porque la mayoría de templates y módulos no son compatibles) en un sitio de test calcado del original para evitarnos daños mayores. Siguiendo las recomendaciones de Pligg debemos, como siempre, realizar una copia de seguridad de la base de datos de las carpetas y archivos.
La nueva versión Pligg 2.0 es gratis (actualizado octubre 2013)
Para iniciar la actualización, y después de haber hecho las copias de seguridad:
1) Desde la administración, debemos desactivar (unistall) todos los módulos de nuestro antiguo Pligg 1.2.2
2) Tenemos que borrar todas las carpetas y archivos dejando solamente lo siguiente:
• /avatars/ (directorio completo)
• /libs/dbconnect.php
• /favicon.ico
• /settings.php
NOTA IMPORTANTE. Tampoco debemos borrar carpetas y archivos que contengan imágenes y que hayamos creado y subido nosotros (por ejemplo algún directorio llamado /images). Si se usa el módulo Upload, también es recomendable mantener completo todas las carpetas y archivos en la ruta /modules/uploap/ . Yo incluso mantendría mi antiguo template en la ruta /templates/nombre-de-mi-template (ver más adelante la razón).
Por ejemplo en mi caso, y una vez borrados todos los directorios, el árbol de carpetas quedaría así:
• /
• /avatars/
• /avatars/groups_uploaded
• /avatars/user_uploaded
• /images
• /libs/dbconnect.php
• /modules/upload
• /favicon.ico
• /settings.php
• /templates/nombre-de-mi-template
3) Descomprimir y subir mediante FTP la nueva versión de Pligg 2.0 a nuestro servidor (leer antes el archivo readme.html incluido)
4) Renombrar /favicon.ico.default a /favicon.ico (si lo tenéis personalizado no nace falta hacerlo pues lo perderéis por el de Pligg por defecto)
5) Renombrar settings.php.default a settings.php y modificar el nombre del prefijio de las tablas de la base de datos de pligg_ por el vuestro (recomendado). El archivo quedaría así:
6) Renombrar /libs/dbconnect.php.default a /libs/dbconnect.php y rellenar los datos de la conexión a MySql:
7) Renombrar /language/lang_english.conf.default a lang_english.conf (vamos a instalarlo en inglés, luego ya tendremos tiempo de cambiarlo)
8) Dar permisos CHMOD 777 a (puede que funcione con 755 pero saltarán algunos errores):
• /admin/backup/
• /avatars/groups_uploaded/
• /avatars/user_uploaded/
• /cache/
• /languages/ (y todos los ficheros de idioma contenidos en este directorio)
9) Dar permisos CHMOD 666 a los ficheros siguientes:
• /settings.php
• /libs/dbconnect.php
10) Renombrar todos los archivos de idioma en la carpeta /languages quitándoles el .default del final (el archivo quedaría así: lang_english.conf)
Una vez hecho todo esto lo que tenemos es la base de datos de Pligg 1.2.2 y los archivos y carpetas de la versión Pligg 2.0
11) Abre en tu navegador /install/upgrade.php desde la URL de tu sitio de instalación de Pligg
A continuación veremos el proceso paso a paso:
Lo primero que nos salta es un error de timezone de PHP en el archivo /libs/db.php
Strict Standards: date() [function.date]: It is not safe to rely on the system's timezone settings. Please use the date.timezone setting, the TZ environment variable or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'Europe/Berlin' for 'CEST/2.0/DST' instead in /homepages/41/d229641712/htdocs/hablame-del-mar/libs/db.php on line 332
Posiblemente debido a la zona horaria que tengo en la base de datos. Continuamos, teniendo en cuenta este error para corregirlo.
Por si acaso tenemos algún error más vamos a mirar la pestaña "Troubleshooter":
Como vemos nos da un error en 18 de los 23 requerimientos:
Warning: Your server has only met 18 of the 23 requirements to run Pligg CMS. While not all of the items on this page are required to run Pligg, we suggest that you try to comply with the suggestions made on this page. Please see the list below to discover what issues need to be addressed.
Vamos a corregirlos uno a uno, primero renombrando cada uno de los idiomas del error quitando el .default. Renombramos también la carpeta /logs.default a /logs y veremos que se nos han quitado los errores:
Volvemos a la pestaña "Upgrade" y pulsamos "Click to Continue in English", luego en "Proceed with Upgrade":
Nos aparecerá que hemos hecho la actualización satisfactoriamente (mantenemos el error timezone):
By clicking on the button below, Pligg will upgrade your database to the latest version. It will also add new phrases by appending the latest additions to the bottom of your language file. You will still need to upload the new files and manually update your templates to be fully compatable with the latest version.
We recommend that you back up your website and database to your local computer before proceeding because the upgrade process will make permanent changes to your MySQL database.
Upgrading Language File...
Success, Pligg updated your language file. It now includes the latest language items.
Upgrading Database...
Performing one-time Pligg 2.0.0 Upgrade
Changed story link_status and link_group_status from "queued" to "new".
Changed log file locations
Order modules via the Admin Panel
Changed template to Bootstrap
Changed default CAPTCHA to Solve Media
Renaming Simple Messaging Database Fields
Changed user profile fields to match new social media sites
Changed default avatars to larger format .png files
Changed group avatar height/width size setting to 100px
Changed Admin user level to Moderator
Changed God user level to Admin
Removed Spell Checker
Created FAQ Page
Regenerating the totals table
Clearing /cache directory
If there were no errors displayed, upgrade is complete!
Si ahora nos vamos a la pestaña "Admin" se nos avisará que debemos borrar la carpeta /install :
Yo lo que suelo hacer es renombrarla.
Ahora accedemos a la administración pinchando en el enlace azul que dice continue to the Admin Panel "Click Here", y veremos que la pantalla es un poco rara (es posible que incluso salga la página totalmente en blanco):
En mi caso, como en la base de datos tengo los datos del Pligg en producción, deberé cambiar en la tabla config la URL base del sitio por la URL del sitio en pruebas.
En una migración normal también se deberá cambiar en la tabla config el nombre del template antiguo por boostrap, ya que aunque al final de la actualización se nos diga en uno de los puntos: "Changed template to Bootstrap", no es verdad y si no se hace este cambio saldrá una pantalla en blanco.
Otro mensaje que puede aparecer se refiere a que no existe nuestro template, ni el template por defecto de Pligg (Wistie):
Deberemos subirlos por FTP a la carpeta /templates si queremos seguir con la instalación (Si después refrescamos la pantalla CTRL+F5 veremos que el mensaje desaparece).
Una vez corregido, la pantalla de inicio de sesión en la administración de Pligg 2.0 sería esta:Y este es el Panel de Administración de Pligg 2.0
Sólo quedará ir habilitando los módulos y las configuraciones que tengamos personalizadas de nuestro sitio antiguo al moderno. Tampoco se os olvide renombrar el archivo /htaccess.default por /.haccess y si Pligg está en una subcarpeta dejar esta línea así:
RewriteBase /ruta-directorio-pligg
Mi sitio en producción con la nueva versión de Pligg 2.0 (¡ya lo he acabado por fin!) lo podéis ver en Háblame del Mar