Las variables de personalización

Algunos comportamientos de las páginas de tu sitio pueden ser modificadas a través de variables PHP. Estas variables son normalmente definidas por SPIP pero para obtener una mayor personalización del sitio la webmisstres o el webmaster puede modificarlas.

¿Donde indicar estas variables?

No es necesario entrar en el propio código fuente de SPIP para fijar estas variables (¡por suerte!).

-  Para el conjunto del sitio

Si quieres fijar estas variables para todo el sitio puedes indicarlas como globales con una sintaxis un poco diferente en un fichero denominado mes_fonctions.php3, colocado en la raíz del sitio. (Eventualmente será necesario crear este fichero y rodear las definiciones de tus variables por las etiquetas <?php y ?>, ver los ejemplos más abajo.)

-  Para cada tipo de esqueleto

[SPIP 1.4] También puedes definir estas variables esqueleto por esqueleto. Para ello es necesario declararlas al principio del fichero PHP que llama al esqueleto (por ejemplo article.php3, rubrique.php3...). Se insertan naturalmente junto a las variables obligatorias $fond y $delais. Ver los ejemplos.

Las variables del texto

Estas variables se utilizan en el cálculo de la paginación (corrección tipográfica) por SPIP.

-  $debut_intertitre fija el código HTML insertado en apertura de los intertítulos (mediante el atajo{{{). Por omisión, su valor es:

$debut_intertitre = "\n<h3 class=\"spip\">\n";

-  $fin_intertitre es el código HTML insertado en el cierre de los intertítulos (atajo }}}). Su valor normal es:

$fin_intertitre = "</h3>\n";

-  $ouvre_ref es el código de apertura de las llamadas de las notas de pie de página; por omisión, es un espacio insecable y un corchete abriendo;

-  $ferme_ref es el código de cierre de las llamadas de las notas a pie de página; por omisión es un corchete cerrando;

-  $ouvre_note es el código de apertura de la nota de pie de página (tal como aparece en #NOTES); por omisión, un corchete abriendo;

-  $ferme_note es el código de cierre de las notas a pie de página (un corchete cerrando).

Opciones alternativas podrían ser, por ejemplo, utilizar paréntesis o, más atractivo, abrir con la etiqueta HTML <sup>, y cerrar con </sup>, lo que situaría al número de nota en exponente.

-  El fichero puce.gif y la variable $puce. Cuando empiezas una nueva línea con un guión, SPIP la reemplaza por un pequeño símbolo gráfico. Este símbolo [1] está constituido por el fichero puce.gif instalado en la raíz del sitio. Puedes modificar el fichero si te apetece. Pero también puedes decidir fijar tú mismo la elección de la "puce" a través de la variable$puce.Por ejemplo para indicar otro fichero gráfico:

$puce = "<img src='mipulga.gif' alt='-' align='top' border='0'>";

o por un elemento HTML no gráfico:

$puce = "<li>";

Las variables para los foros públicos

Existen variables que permiten fijar el comportamiento de los foros públicos con palabras clave.

Nota: Estas variables sólo se utilizan cuando creas foros públicos en los que las personas visitantes pueden seleccionar palabras clave; su utilización es, pues, sumamente específica (y nada evidente...).

-  $afficher_texte (valores «oui» o «non» : - sí o no). Por omisión, los foros públicos están concebidos para permitir a las personas visitantes introducir un texto de mensaje; pero, cuando se propone la elección de palabras clave en los foros, se puede decidir que ningún mensaje es útil, que sólo la selección de las palabras clave importa. En este caso se podrá indicar:

$afficher_texte = "non";

-  $afficher_groupe permite indicar los diferentes grupos de palabras-clave que se desea proponer en tal o cual foro. En efecto, todos los foros de un sitio pueden no ser idénticos. Si, en ciertos foros, se quiere poder proponer la selección de todos los grupos de palabras clave (es decir aquellos que, desde el espacio privado, se han hecho accesibles a las personas visitantes) es posible que en otros se quiera utilizar sólo algunos grupos, o inclusive ningún grupo (ninguna selección de palabras clave: éstos son foros de mensajes únicamente).

La variable $afficher_groupe es una matriz (array) y se construye, por ejemplo, de la manera siguiente:

$afficher_groupe[] = 3;
$afficher_groupe[] = 5;

hace que se muestren únicamente los grupos cuyos identificadores son 3 y 5.

$afficher_groupe[] = 0;

impide utilizar palabras clave en esos foros (ya que no existe ningún grupo de palabras clave numerado 0).

Si no se le indica nada (no se explicita $afficher_groupe ), SPIP utiliza todos los grupos de palabras clave que están indicados en el espacio privado como «propuestos a las personas visitantes del sitio público».

Impedir que se vean los botones de administración

Todas las páginas de esqueletos añaden unos «botones de administración» (en especial: «recalcular esta página») cuando la ve un administrador que tiene activada la cookie de correspondencia. Esta característica, muy práctica para gestionar el sitio, puede resultar molesta en ciertos casos; por ejemplo para los archivos XML, que en ningún caso es deseable que resulten perturbados por tales añadidos.

[SPIP 1.7] La variable flag_preserver permite evitar que se vean.

$flag_preserver = true;

Se verá por ejemplo el uso de esta variable en backend.php3.

La carpeta de los esqueletos

[SPIP 1.5] Si se desea poner los esqueletos de un sitio en una carpeta particular, por ejemplo para probar diferentes juegos de esqueletos localizados en Internet, o porque a uno le gustan las cosas bien ordenadas, es posible fijar en mes_fonctions.php3 la variable $dossier_squelettes.

<?php
    $GLOBALS['dossier_squelettes'] = 'design';
?>

A partir de ese momento, SPIP irá a buscar prioritariamente los esqueletos presentes en la carpeta design/ (que habrás creado en la raíz de tu sitio). Si, además, utilizas <INCLURE(xxx.php3)>, SPIP irá a buscar el fichero xxx.php3 primero en design/, y luego, si no se encuentra ahí, en la raíz del sitio.

Las ventajas de este arreglo pueden parecer evidentes (mejor separación del código SPIP y de la estructura del sitio, posibilidad de cambiar todo un conjunto de esqueletos de una sola vez, etc.); el inconveniente principal es que será más difícil ver los esqueletos a través de un simple navegador. Efectivamente, aunque se encuentren en la carpeta design/, el HTML que contienen estos archivos de esqueleto, deberá estar diseñado como si estuvieran en la raíz del sitio. De este modo, los enlaces hacia las imágenes o hacia los CSS, en especial, aparecerán como «rotos».

Ejemplos

Para modificar variables sólo para un cierto tipo de esqueletos (por ejemplo para las páginas de secciones), basta con definir sus valores en el fichero de llamada de estos esqueletos. Por ejemplo, para las secciones, se pueden fijar los valores directamente en rubrique.php3:

<?php
    $fond = "rubrique";
    $delais = 2 * 3600;
    $espace_logos = 20;
    include ("inc-public.php3");
?>

Aquí se ha modificado el valor del espacio alrededor de los logos.


-  Para modificar los valores de variables para el conjunto del sitio se puede definir estos en el fichero mes_fonctions.php3.

Atención, cuando se definen los valores en este fichero, es imperativo utilizar la sintaxis $GLOBALS['xxx'] para cada una de las variables por personalizar. Por ejemplo, para definir el valor de $debut_intertitre, se utiliza la sintaxis $GLOBALS['debut_intertitre'].

El uso de esta sintaxis viene impuesto por imperativos de seguridad de los sitios.

<?php
    $GLOBALS['debut_intertitre'] = "<h3 class='mon_style_h3'>";
    $GLOBALS['fin_intertitre'] = "</h3>";

    $GLOBALS['ouvre_ref'] = '&nbsp;(';
    $GLOBALS['ferme_ref'] = ')';
    $GLOBALS['ouvre_note'] = '(';
    $GLOBALS['ferme_note'] = ') ';

    $GLOBALS['espace_logos'] = 0;
?>

Notas

[1En francés, se le llama puce, lo que significa «pulga». No duden en hacer propuestas de traducción en la lista spip-es.

Autor o autora mboix Publicado el: Actualizado: 26/10/12

Traducciones: عربي, català, English, Español, français, italiano, Nederlands, òc lengadocian