Algunas de las cosas por las que no me terminaba de decidir si meter Coppermine en el blog eran:
- Que me obligaba a currarme un theme nuevo para la galería.
- Que el theme no quedaba integrado en el blog, por muy trabajado que estuviera el theme, no funcionarían los plugins, ni nada de php propio de Wordpress.
- Existe un plugin llamado Psngallery (que vamos a utilizar) . pero solo enlaza con la galería, es decir, la foto al final se ve en la galería y no en el blog.
Ojeando el sistema de themes de Coppermine me di cuenta de que, con pequeños cambios, no seria demasiado complicado integrar Coppermine. Allá vamos.
En primer lugar ¿cual es la idea? : La idea es utilizar como plantilla una página ya procesada por Wordpress en vez de un template.html estático . Así conseguimos integrar la galería con el Wordpress y no solo enlazarla como si fuera una página externa o accesoria . Además nos ahorramos tener que diseñar un theme propio para el Coppermine.
En segundo lugar, ¿va a merecer la pena todo este rollo?: Buena pregunta, supongo que Pascal Snijers, el autor de Psngallery, va a seguir mejorando el plugin y consiguiendo un mayor nivel de integración con Wordpress . El día que saque el plugin con una integración 100%, desharé los cambios, mientras tanto esta es una forma poco trabajosa de conseguir la integración. Seguro que las hay mejores.
¿Que es lo que falta?, sobre todo un bridge para que el Coppermine reconozca directamente los usuarios de Wordpress y no te obligue a hacer login dos veces para poder utilizar las funciones de administración de Coppermine . Pero como mi blog es monousuario y no me importa hacer login de vez en cuando, pues esperare a que alguien se lo curre
(vago que es uno).
Requisitos previos:
Por supuesto, instalar Coppermine y el plugin Psngallery del amigo Pascal Snijers . La configuración y puesta en marcha corren de vuestra cuenta . Nada que un bricomaniaco deba temer. Para futuras referencias, yo he instalado la galería en un directorio llamado galería, con lo que la galería es accesible en http://www.automaticjack.tv/galeria
1er. paso, preparando el wordpress:
Hay dos caminos, el fácil : Integramos la galería usando un post como plantilla, el post puede marcarse con fecha a 01/Enero/1970 para mandarlo al fondo de la lista, y podemos quitarle los comentarios, el texto del post será este (por ejemplo):
<code><script type=”text/javascript” src=”scripts.js”></script></code>
{ADMIN_MENU}
{GALLERY}
Tomamos nota del enlace permanente: http://www.automaticjack.tv/archivos/1970/01/01/galeria/
Ventajas: no hay que duplicar la plantilla de Wordpress.
Desventajas: Aparece un post de enero de 1970 y la galería muestra la cabecera y pie de un post normal.
(pasa al 2º paso)
El difícil, preparamos una copia del index.php llamada galeria.php, en el mismo directorio raíz del Wordpress, entre <div id=”content”> y </div>
<br>
<script type=”text/javascript” src=”scripts.js”></script>
{ADMIN_MENU}
<br>
{GALLERY}
Tomamos nota del enlace : http://www.automaticjack.tv/galeria.php
Ventajas: tenemos un posible diseño propio para la galería, sin cabeceras ni pies de post.
Desventajas: hay que editar el fichero y tendremos que trasladar los futuros cambios en la plantilla base a galeria.php, aunque es fácil solucionar esto.
2º paso, editando el coppermine:
Este cambio inutiliza el sistema de themes de Coppermine, simplemente nos lo vamos a saltar, así que recuerda tener copia de seguridad del archivo que vamos a editar.
En la carpeta include de la galería . Editamos el fichero functions.inc.php y vamos a la línea 370:
if (file_exists(TEMPLATE_FILE)) {
$template_file = TEMPLATE_FILE;
} elseif (file_exists($THEME_DIR . TEMPLATE_FILE)) {
$template_file = $THEME_DIR . TEMPLATE_FILE;
} else die(”<b>coppermine critical error</b>:<br />Unable to load template file “.TEMPLATE_FILE.”!”);
Que vamos a sustituir por:
// en la siguiente línea igualamos $template_file a la url que hemos anotado arriba
// en mi caso ‘http://www.automaticjack.tv/galeria.php’, si elegimos la forma fácil
// tendremos que poner ‘http://www.automaticjack.tv/archivos/1970/01/01/galería/’
$template_file = ‘http://www.automaticjack.tv/galeria.php’;
$gestor = fopen($template_file, ‘rb’);
$template = ‘’;
while (!feof($gestor)) {
$template .= fread($gestor, 8192);
}
fclose($gestor);
3er paso, ¿por que salen caracteres raros?
Veamos, originalmente el Wordpress usa como codificación el utf-8, Coppermine tiene como idioma (entre otros) spanish utf-8, pero si lo abrís veréis que tiene una forma de codificar los caracteres especiales como vocales acentuadas y ñ que no coinciden con la codificación de Wordpress . Si no os apetece editar el fichero de idioma, os podéis descargar el mío y lo ponéis en la carpeta lang, luego en el panel de control lo debéis cambiar por wordpress-spanish-utf-8.
4º paso, ¿y el css del theme de coppermine?
Como último paso podemos incorporar a nuestro wp-layout.css las partes del css de Coppermine que no coinciden y adaptarlas, este paso no es imprescindible, pero seguro que mejora el aspecto de la galería, te puedes fijar en el css de cualquier theme y pasar las partes que no coincidan al principal de Wordpress. Yo todavía no lo he hecho, pero lo haré.
Y ya esta, ya solo queda poner en nuestro template un enlace a la galería (http://www.automaticjack.tv/galeria/index.php en mi caso) y/o integrar el plugin Psngallery con un tag como < ?php CPGRndPicture(-1, 5, 1,’’,’’);?> (pone cinco imágenes aleatorias) y/o usar los tags que provee el plugin para meter fotos en los post.
¿Ein?, ¿has llegado hasta aquí abajo? . No me lo puedo creer, gracias por tu atención. 