Como es sabido, SPIP no permite mezclar en un único bucle artículos y secciones.

Sin embargo, en muchos sitios esto es una necesidad, especialmente cuando en la portada se ponen novedades que unas veces son artículos y otras secciones y se quieren ordenar, por ejemplo, por fecha.

El truco consiste en programar un bucle para artículos y crear artículos falsos que redireccionen a secciones.

Crear un artículo falso que redireccione a una sección

En la configuración del sitio, en contenido del sirtio, en los artículos, hay que habilitar la opción “enlace hipertexto”.

En el artículo falso, en el campo URL hay que poner el enlace a la sección real. Por ejemplo:

spip.php?rubrique7

En el artículo falso, en el campo Enlace hipertexto hay que poner el título del enlace.

Estos dos campos se manejan con las balizas #URL_SITE y #NOM_SITE

El bucle

El bucle podría ser algo así:

BOUCLE_menu(ARTICLES){id_rubrique=39}{par titre}>
  <a href="#URL_SITE">#NOM_SITE</a>
</BOUCLE_menu>

Esto funcionará si todos los artículos tienen esas dos balizas, es decir, si todos son “falsos”.

Pero si hay artículo falsos y artículos verdaderos, en unos casos se deberán utilizar esas balizas y en otros casos las balizas habituales: #URL_ARTICLE y #TITRE.

El bucle, mejorado

En este caso, hay que usar el filtro condicional, cuya sintaxis es:

|?{afirmativo,negativo}

Y el bucle quedaría más o menos así:

<BOUCLE_menu(ARTICLES){id_rubrique=39}{par titre}>
  <a href="[(#URL_SITE||?{#URL_SITE,#URL_ARTICLE})]">
  [(#NOM_SITE||?{#NOM_SITE,#TITRE})]</a>
</BOUCLE_menu>

Lo cual hace que si el artículo tiene #URL_SITE se tome este valor, y si no se tome el valor #URL_ARTICLE. Y lo mismo para #NOM_SITE y #TITRE.

 Leave a Reply

(required)

(required)

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

   
Blog de Dabne || Web de Dabne Suffusion theme by Sayontan Sinha