Changeset 100825 in spip-zone


Ignore:
Timestamp:
Dec 3, 2016, 7:30:50 PM (3 years ago)
Author:
maieul@…
Message:

si INDEXERDOC_OBJETS_LIES est activé, lors de l'indexation d'un objet,
ajouter le contenu des documents liés

File:
1 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/indexer-documents/branches/dev/indexerdoc_pipelines.php

    r100824 r100825  
    11<?php
    22include_spip('inc/config');
    3 
     3include_spip('action/editer_liens');
    44define (_INDEXERDOC_OBJETS_LIES,0);// A mettre sur 1 dans mes_options.php si on veut que le contenu du document soit également indexé dans l'objet lié
    55/**
     
    4545        }
    4646       
     47        if (_INDEXERDOC_OBJETS_LIES and $flux['args']['objet'] != 'document')// si on a demandé à indexer le documents dans l'objet lié
     48        {
     49                if (defined('_DIR_PLUGIN_EXTRAIREDOC')) {
     50                        include_spip('inc/extraire_document');
     51                }
     52                $id_objet = $flux['args']['id_objet'];
     53                $objet = $flux['args']['objet'];
     54                $documents_lies = objet_trouver_liens(
     55                        array('document'=>'*'),
     56                        array($objet=>$id_objet)
     57                );// récuperer tous les documents liés
     58                foreach ($documents_lies as $document){// les parcourir tous
     59                        $id_document = $document['id_document'];
     60                        $tableau_doc = array('id_document'=>$id_document);
     61                        $extraire = inc_extraire_document($tableau_doc); // on refait l'extrait plutot que de prendre dans ce qui existe en sphinx, parce qu'on ne sait pas quand le document a été indexé par rapport à l'objet (et en plus la requete sphinx, je sais pas la faire en php)
     62                        $flux['data']->content  .= "\n\n" . $extraire['contenu'];
     63                }
     64        }
     65       
    4766        return $flux;
    4867}
Note: See TracChangeset for help on using the changeset viewer.