faire une classe en float left, puis changer uniquement le paramètre "margin-top".
Exemple :
<div class="photosItem" style="margin-top: <? echo rand(20, 80)."px";?>"><a href="cv.php3?id_rubrique=#ID_RUBRIQUE">#LOGO_RUBRIQUE
[(#TITRE|supprimer_numero)]</a> </div></BOUCLE_interieure2>
</div>Merci à _fil_ pour l’astuce...
il suffit de mettre dans la boucle SPIP le critère {! par LENGTH(texte)}... Cela donne pour la boucle SPIP complète :
Et l’équivalent en mySql, pour classer les enregistrements par ordre décroissant de nombre de caractères :
Pour ouvrir une popup thickbox à l’ouverture de la page, il faut langer le script thickbox directement à l’intérieur d’un script qui détecte la fin du chargement de la page :
On crée une boucle pour récupérer le document :
à l’intérieur de laquelle on insère le jQuery qui lance le script Thickbox une fois la page chargée :
En utilisant MySql, il est possible d’ajouter ces documents dans la table spip_documents_articles.
Dans quel cas se sert-on de cette requête ? On s’en sert pour éviter de doublonner les documents joints aux articles.
On doit sélectionner une liste à 2 colonnes, les articles qui sont des traductions d’articles, et les documents joints à l’article original. On utilise ignore pour que le process ne s’arrête pas si le couple id_document/id_article existe déja dans la table.
Nota : avant de lancer l’opération et afin d’éviter les doublons, nous avons pris la précaution de remplacer les index de la table spip_documents_articles par une clé primaire sur les 2 champs. Voici la commande à lancer pour effectuer cette manip :
ALTER TABLE `spip_documents_articles` ADD PRIMARY KEY ( `id_document` , `id_article` ) Ce qui donnera par exemple pour tous les articles de toutes les sous rubriques de la rubrique 23 :
INSERT IGNORE INTO spip_documents_articles (id_article, id_document)
SELECT a.id_article, d.id_document
FROM spip_articles AS a
JOIN spip_documents_articles AS b
ON a.id_trad = b.id_article
JOIN spip_documents AS d
ON b.id_document = d.id_document
JOIN spip_rubriques AS r
ON r.id_rubrique = a.id_rubrique
WHERE r.id_parent = 23
AND a.id_article != a.id_trad
AND a.id_trad != 0
ORDER BY r.id_parent ASCProblème : on a besoin de l’url de l’image réduite, et non de la balise complète générée par SPIP.
Solution : le filtre "extraire_attibut" est la solution !
Il s’utilise comme suit :
[(#FICHIER|image_reduire{800}|extraire_attribut{src})]
Et à la place d’obtenir ceci :
<img src="local/cache-vignettes/L800xH600/IMG_0329-cc46e.jpg" style="height: 600px; width: 800px;" class="" width="800" height="600">
On obtient bien cela :
local/cache-vignettes/L800xH600/IMG_0329-cc46e.jpg
Après une install de SPIP sous IIS, il est parfois impossible de créer de nouveaux enregistrements dans les articles, auteurs, etc...
Ce défaut est du au fait que IIS réclame des valeurs par défaut pour certains champs de certaines tables :
table spip_auteurs
table spip_articles
Lors d’une tentative de connexion distante en ftp, DreamWeaver plante sur une erreur sérieuse. La connexion avec un autre utilitaire FTP fonctionne et permet de voir qu’un fichier XYIZNWSK a été créé par DreamWeaver à la racine du dossier. La connexion à un autre site en DreamWeaver depuis la même machine fonctionne. La connexion au même site depuis une autre machine équipée de DreamWeaver plante aussi.
On peut en tirer les conclusions suivantes :
il s’agit d’un problème (on d’une "sensibilité"...) liée à la fonction FTP DreamWeaver (puisque l’on se connecte au même site avec un autre utilitaire FTP)
il ne s’agit pas d’un problème de configuration de DreamWeaver puisque 1. on se connecte avec DreamWeaver à d’autre sites depuis la même machine et 2. ça plante sur le site en question depuis DreamWeaver sur une autre machine
il s’agit d’un problème lié au site en question sur le serveur
il ne s’agit pas d’un problème lié au serveur (puisque on se connecte en ftp sur d’autres sites du même serveur)
En cherchant à reconstruire le site fautif en partant d’un répertoire vide, le problème est apparu lorsque un fichier sans date était présent à la racine du site. En l’occurrence il s’agissait du fichier svn_revision.svn daté du 01/01/1970. Il a suffi de lui donner une date avec la commande :
# touch -t 09101700 svn.revision
pour que tout rentre dans l’ordre.
Pour mémoire ce fichier svn.revision était généré par SPIP rev 14357.
La commande pour chercher sur le serveur tous les autres fichiers ayant une date plus vieille que 1000 jours est find /home -name "svn.revision" -mtime +1000
La commande pour un fichier était touch -t 10091700 /home/cym/sd/compas/www/svn.revision
Il faut effectuer une jointure et sélectionner les articles liés à toutes les rubriques filles d’une rubrique.
SELECT id_article, titre, id_trad
FROM spip_articles AS a
JOIN spip_rubriques AS r
ON r.id_rubrique = a.id_rubrique
WHERE r.id_parent = 14On a pas mal galéré pour celle là, alors elle est précieuse ! Il faut d’abord comprendre le principe d’une recherche SPIP.
On se sert du formulaire de recherche de SPIP, qu’on appelle au sein d’un squelette par la balise #FORMULAIRE_RECHERCHE.
Ensuite il faut comprendre qu’une page de recherche cherche parmi différents éléments de SPIP : des auteurs, des articles, des rubriques, etc. Donc pour faire une page de recherche, on fait plusieurs boucles : une pour les auteurs, une pour les articles, une pour les rubriques, etc.
Ensuite, si on veut limiter le ’domaine’ de recherche, eh bien il faut mettre un ’critère’ dans chacune des boucles. Nous avons trouvé que pour les articles, le critère à employer était {branche?} sous réserve que la rubrique était passée dans l’url. Pour les rubriques, le bon critère est {id_parent}.
Objectif :
Dans les quelettes par défaut de Spip, l’affichage de la date de création des articles apparaît par défaut. Pour des articles de fond afficher la date n’est pas indispensable, en tous cas moins que pour des articles d’actualité. Il est donc justifié de pouvoir à sa guise, à la rédaction de l’article, indiquer si la date de création doit figurer ou pas.
Solution :
Une solution consiste à faire un test sur la date saisie lors de la création. Par exemple, si le jour est saisi, on affiche la date. Dans le cas contraire la date n’est pas affichée.
Réalisation :
Dans le squelette Spip, au moment d’afficher ou non la date, il suffit d’introduire une boucle
<BOUCLE_date(ARTICLES){id_article}><?php
$existe_jour="[(#DATE|jour)]";
if ($existe_jour!==''){
echo ("<h6>[(#DATE|nom_jour)] [(#DATE|jour)] [(#DATE|nom_mois)] [(#DATE|annee)] </h6>");
}
?></BOUCLE_date>De cette manière, les articles peuvent quand même être tiés sur une date (sur le mois).
0 | 10
