From 0412c1b6ba993a465a5bf41e40bf90679e1e3b99 Mon Sep 17 00:00:00 2001 From: Fil <fil@rezo.net> Date: Sun, 30 Apr 2006 21:17:08 +0000 Subject: [PATCH] =?UTF-8?q?int=C3=A9gration=20du=20#247=20:=20on=20stocke?= =?UTF-8?q?=20la=20structure=20d'indexation=20en=20meta,=20ce=20qui=20la?= =?UTF-8?q?=20rend=20modifiable=20par=20ailleurs=20(Cedric)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ecrire/inc/indexation.php | 100 +++++++++++++++++++++++++------------- 1 file changed, 67 insertions(+), 33 deletions(-) diff --git a/ecrire/inc/indexation.php b/ecrire/inc/indexation.php index 94055d8c63..340fa4f489 100644 --- a/ecrire/inc/indexation.php +++ b/ecrire/inc/indexation.php @@ -33,55 +33,89 @@ $INDEX_tables_interdites=array('spip_ajax_fonc'); // Indexation des elements de l'objet principal // 'champ'=>poids, ou 'champ'=>array(poids,min_long) global $INDEX_elements_objet; -$INDEX_elements_objet['spip_articles'] = array('titre'=>8,'soustitre'=>5,'surtitre'=>5,'descriptif'=>4,'chapo'=>3,'texte'=>1,'ps'=>1,'nom_site'=>1,'extra|unserialize_join'=>1); -$INDEX_elements_objet['spip_breves'] = array('titre'=>8,'texte'=>2,'extra|unserialize_join'=>1); -$INDEX_elements_objet['spip_rubriques'] = array('titre'=>8,'descriptif'=>5,'texte'=>1,'extra|unserialize_join'=>1); -$INDEX_elements_objet['spip_auteurs'] = array('nom'=>array(5,2),'bio'=>1,'extra|unserialize_join'=>1); -$INDEX_elements_objet['spip_mots'] = array('titre'=>8,'descriptif'=>5,'texte'=>1,'extra|unserialize_join'=>1); -$INDEX_elements_objet['spip_signatures'] = array('nom_email'=>array(2,2),'ad_email'=>2,'nom_site'=>2,'url_site'=>1,'message'=>1); -$INDEX_elements_objet['spip_syndic'] = array('nom_site'=>50,'descriptif'=>30,'url_site|contenu_page_accueil'=>1); -$INDEX_elements_objet['spip_syndic_articles'] = array('titre'=>5); -$INDEX_elements_objet['spip_forum'] = array('titre'=>3,'texte'=>2,'auteur'=>array(2,2),'email_auteur'=>2,'nom_site'=>2,'url_site'=>1); -$INDEX_elements_objet['spip_documents'] = array('titre'=>20,'descriptif'=>10,'fichier|nettoie_nom_fichier'=>1); - +if (isset($GLOBALS['meta']['INDEX_elements_objet'])) + $INDEX_elements_objet = unserialize($GLOBALS['meta']['INDEX_elements_objet']); +else{ + $INDEX_elements_objet['spip_articles'] = array('titre'=>8,'soustitre'=>5,'surtitre'=>5,'descriptif'=>4,'chapo'=>3,'texte'=>1,'ps'=>1,'nom_site'=>1,'extra|unserialize_join'=>1); + $INDEX_elements_objet['spip_breves'] = array('titre'=>8,'texte'=>2,'extra|unserialize_join'=>1); + $INDEX_elements_objet['spip_rubriques'] = array('titre'=>8,'descriptif'=>5,'texte'=>1,'extra|unserialize_join'=>1); + $INDEX_elements_objet['spip_auteurs'] = array('nom'=>array(5,2),'bio'=>1,'extra|unserialize_join'=>1); + $INDEX_elements_objet['spip_mots'] = array('titre'=>8,'descriptif'=>5,'texte'=>1,'extra|unserialize_join'=>1); + $INDEX_elements_objet['spip_signatures'] = array('nom_email'=>array(2,2),'ad_email'=>2,'nom_site'=>2,'url_site'=>1,'message'=>1); + $INDEX_elements_objet['spip_syndic'] = array('nom_site'=>50,'descriptif'=>30,'url_site|contenu_page_accueil'=>1); + $INDEX_elements_objet['spip_syndic_articles'] = array('titre'=>5); + $INDEX_elements_objet['spip_forum'] = array('titre'=>3,'texte'=>2,'auteur'=>array(2,2),'email_auteur'=>2,'nom_site'=>2,'url_site'=>1); + $INDEX_elements_objet['spip_documents'] = array('titre'=>20,'descriptif'=>10,'fichier|nettoie_nom_fichier'=>1); + ecrire_meta('INDEX_elements_objet',serialize($INDEX_elements_objet)); + ecrire_metas(); +} // Indexation des objets associes // 'objet'=>poids global $INDEX_objet_associes; -$INDEX_objet_associes['spip_articles'] = array('spip_documents'=>1,'spip_auteurs'=>10,'mot'=>3); -$INDEX_objet_associes['spip_breves'] = array('spip_documents'=>1,'spip_mots'=>3); -$INDEX_objet_associes['spip_rubriques'] = array('spip_documents'=>1,'spip_mots'=>3); -$INDEX_objet_associes['spip_documents'] = array('spip_mots'=>3); +if (isset($GLOBALS['meta']['INDEX_objet_associes'])) + $INDEX_objet_associes = unserialize($GLOBALS['meta']['INDEX_objet_associes']); +else { + $INDEX_objet_associes['spip_articles'] = array('spip_documents'=>1,'spip_auteurs'=>10,'spip_mots'=>3); + $INDEX_objet_associes['spip_breves'] = array('spip_documents'=>1,'spip_mots'=>3); + $INDEX_objet_associes['spip_rubriques'] = array('spip_documents'=>1,'spip_mots'=>3); + $INDEX_objet_associes['spip_documents'] = array('spip_mots'=>3); + ecrire_meta('INDEX_objet_associes',serialize($INDEX_objet_associes)); + ecrire_metas(); +} // Indexation des elements des objets associes // 'champ'=>poids, ou 'champ'=>array(poids,min_long) global $INDEX_elements_associes; -$INDEX_elements_associes['spip_documents'] = array('titre'=>2,'descriptif'=>1); -$INDEX_elements_associes['spip_auteurs'] = array('nom'=>1); -$INDEX_elements_associes['spip_mots'] = array('titre'=>4,'descriptif'=>1); - +if (isset($GLOBALS['meta']['INDEX_elements_associes'])) + $INDEX_elements_associes = unserialize($GLOBALS['meta']['INDEX_elements_associes']); +else { + $INDEX_elements_associes['spip_documents'] = array('titre'=>2,'descriptif'=>1); + $INDEX_elements_associes['spip_auteurs'] = array('nom'=>1); + $INDEX_elements_associes['spip_mots'] = array('titre'=>4,'descriptif'=>1); + ecrire_meta('INDEX_elements_associes',serialize($INDEX_elements_associes)); + ecrire_metas(); +} // Criteres d'indexation global $INDEX_critere_indexation; -$INDEX_critere_indexation['spip_articles']="statut='publie'"; -$INDEX_critere_indexation['spip_breves']="statut='publie'"; -$INDEX_critere_indexation['spip_rubriques']="statut='publie'"; -$INDEX_critere_indexation['spip_syndic']="statut='publie'"; -$INDEX_critere_indexation['spip_forum']="statut='publie'"; -$INDEX_critere_indexation['spip_signatures']="statut='publie'"; +if (isset($GLOBALS['meta']['INDEX_critere_indexation'])) + $INDEX_critere_indexation = unserialize($GLOBALS['meta']['INDEX_critere_indexation']); +else { + $INDEX_critere_indexation['spip_articles']="statut='publie'"; + $INDEX_critere_indexation['spip_breves']="statut='publie'"; + $INDEX_critere_indexation['spip_rubriques']="statut='publie'"; + $INDEX_critere_indexation['spip_syndic']="statut='publie'"; + $INDEX_critere_indexation['spip_forum']="statut='publie'"; + $INDEX_critere_indexation['spip_signatures']="statut='publie'"; + ecrire_meta('INDEX_critere_indexation',serialize($INDEX_critere_indexation)); + ecrire_metas(); +} // Criteres de des-indexation (optimisation dans base/optimiser) global $INDEX_critere_optimisation; -$INDEX_critere_optimisation['spip_articles']="statut<>'publie'"; -$INDEX_critere_optimisation['spip_breves']="statut<>'publie'"; -$INDEX_critere_optimisation['spip_rubriques']="statut<>'publie'"; -$INDEX_critere_optimisation['spip_syndic']="statut<>'publie'"; -$INDEX_critere_optimisation['spip_forum']="statut<>'publie'"; -$INDEX_critere_optimisation['spip_signatures']="statut<>'publie'"; +if (isset($GLOBALS['meta']['INDEX_critere_optimisation'])) + $INDEX_critere_optimisation = unserialize($GLOBALS['meta']['INDEX_critere_optimisation']); +else { + $INDEX_critere_optimisation['spip_articles']="statut<>'publie'"; + $INDEX_critere_optimisation['spip_breves']="statut<>'publie'"; + $INDEX_critere_optimisation['spip_rubriques']="statut<>'publie'"; + $INDEX_critere_optimisation['spip_syndic']="statut<>'publie'"; + $INDEX_critere_optimisation['spip_forum']="statut<>'publie'"; + $INDEX_critere_optimisation['spip_signatures']="statut<>'publie'"; + ecrire_meta('INDEX_critere_optimisation',serialize($INDEX_critere_optimisation)); + ecrire_metas(); +} // Nombre d'elements maxi a indexer a chaque iteration global $INDEX_iteration_nb_maxi; -$INDEX_iteration_nb_maxi['spip_documents']=10; -$INDEX_iteration_nb_maxi['spip_syndic']=1; +if (isset($GLOBALS['meta']['INDEX_iteration_nb_maxi'])) + $INDEX_iteration_nb_maxi = unserialize($GLOBALS['meta']['INDEX_iteration_nb_maxi']); +else { + $INDEX_iteration_nb_maxi['spip_documents']=10; + $INDEX_iteration_nb_maxi['spip_syndic']=1; + ecrire_meta('INDEX_iteration_nb_maxi',serialize($INDEX_iteration_nb_maxi)); + ecrire_metas(); +} // Filtres d'indexation -- GitLab