function executer_une_indexation_syndic() {
$visiter_sites = lire_meta("visiter_sites");
if ($visiter_sites == "oui") {
$query = "SELECT id_syndic,syndication FROM spip_syndic
WHERE statut='publie' ".
"AND date_index < DATE_SUB(NOW(), INTERVAL 7
DAY) ORDER BY date_index LIMIT 0,1";
if ($result = spip_query($query)) {
if (spip_num_rows($result) > 0 ) {
while ($row = spip_fetch_array($result)) {
$syndication_type=substr($row['syndication'],0,3);
$lock='-';
$id_syndic = $row['id_syndic'];
spip_query("UPDATE spip_syndic SET
date_index=NOW(), syndication=\"$syndication_type$lock\" WHERE
id_syndic=$id_syndic");
indexer_syndic($id_syndic);
spip_query("UPDATE spip_syndic SET
date_index=NOW() syndication=\"$syndication_type\" WHERE
id_syndic=$id_syndic");
}
}
}
}
}
Le premier souci est lié à la taille du champ "syndication", qui devrait
augmenter de 1 caractère.
Le second, c'est qu'il va falloir faire une icône clignotante si un site
reste "locké" (avec un '-' au bout de son champ syndication). L'idéal
serait alors de n plus le considérer comme publié.
Le troisième, c'est qu'un alter table, ça se fait dans la fonction
update que vous maitrisez, pas moi (!).
Ca vous tente ?
A+