Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
scrutaridata:exportapi:php [2016/09/07 16:19]
vincent
scrutaridata:exportapi:php [2016/09/21 18:19] (Version actuelle)
vincent
Ligne 1: Ligne 1:
 ====== Implémentation de l'API en PHP ====== ====== Implémentation de l'API en PHP ======
  
-L'​implémentation de l'API se présente sous la forme d'un fichier unique qui comprend les différentes classes de l'API ainsi que des classes utilitaires. La dernière version stable de ce fichier est disponible à cette adresse : http://​dataexport.scrutari.net/​impl/​php/​scrutaridataexport.txt (remplacez .txt per .php pour l'​exécution)+L'​implémentation de l'API se présente sous la forme d'un fichier unique qui comprend les différentes classes de l'API ainsi que des classes utilitaires. La dernière version stable de ce fichier est disponible à cette adresse : http://​dataexport.scrutari.net/​impl/​php/​scrutaridataexport.txt (remplacez .txt par .php pour l'​exécution)
  
 Toutes les classes et constantes de ce fichier commence par le suffixe **SDE_** afin de minimiser le risque de conflits de noms avec d'​autres classes PHP. Cette implémentation fonctionne avec PHP 5. Elle est sous licence MIT. Toutes les classes et constantes de ce fichier commence par le suffixe **SDE_** afin de minimiser le risque de conflits de noms avec d'​autres classes PHP. Cette implémentation fonctionne avec PHP 5. Elle est sous licence MIT.
  
-Le dépôt subversion permet d'​obtenir la dernière version du fichier ainsi que des exemples d'​utilisation ​+Ces scripts sont accessibles avec Git via https://​framagit.org/​Scrutari/​export-php 
 + 
 +Un autre accès avec Subversion :
  
   svn co http://​depot.exemole.fr/​svn/​web/​apps/​scrutari.net/​php   svn co http://​depot.exemole.fr/​svn/​web/​apps/​scrutari.net/​php
Ligne 64: Ligne 66:
 </​code>​ </​code>​
  
- La première partie comprend les déclarations de classes et de fonctions.+Vient ensuite la déclaration d'une classe utilitaire :
  
 <code php> <code php>
Ligne 87: Ligne 89:
  
 } }
 +</​code>​
  
 +Puis la définit des fonctions.
 +
 +<code php>
 /** /**
 * Ajoute les posts appartenant à la catégorie indiquée par $termTaxonomyId,​ * Ajoute les posts appartenant à la catégorie indiquée par $termTaxonomyId,​
Ligne 237: Ligne 243:
 </​code>​ </​code>​
  
-La deuxième partie ​est celle de l'​initialisation avec l'​utilisation des constantes définies dans comedie.scrutari-data.php pour l'​accès aux données : +C'est alors que commmence ​l'​initialisation avec l'​utilisation des constantes définies dans comedie.scrutari-data.php pour l'​accès aux données :
- +
  
 <code php> <code php>
Ligne 259: Ligne 263:
 </​code>​ </​code>​
  
-Vient ensuite l'​extraction proprement dite avec la définition des méta-données,​ des corpus et thésaurus et les appels aux fonctions pour la récupération des données.+Vient ensuite l'​extraction proprement dite avec la définition des méta-données,​ des corpus et thésaurus et les appels aux fonctions pour la récupération des données ​et la fin de l'​extraction. 
 + 
 +<code php> 
 +//​Démarrage de l'​export avec la définition des méta-données 
 +$baseMetadataExport = $scrutariDataExport->​startExport();​ 
 +$baseMetadataExport->​setAuthority("​comedie.org"​);​ 
 +$baseMetadataExport->​setBaseName("​site"​);​ 
 +$baseMetadataExport->​setBaseIcon("​http://​scrutari.coredem.info/​comedie.png"​);​ 
 +$baseMetadataExport->​setIntitule(SDE_INTITULE_SHORT,​ "​fr",​ "​Comédie"​);​ 
 +$baseMetadataExport->​setIntitule(SDE_INTITULE_LONG,​ "​fr",​ "​Comédie - Concertation,​ participation et médiation appliquées à l’environnement et au territoire"​);​ 
 +$baseMetadataExport->​addLangUI("​fr"​);​ 
 + 
 +//Création du corpus experience correspondant aux fiches de http://​www.comedie.org/​ressources/​fiches-experiences/​ 
 +$corpusMetadataExport = $scrutariDataExport->​newCorpus("​experience"​);​ 
 +$corpusMetadataExport->​setIntitule(SDE_INTITULE_CORPUS,​ "​fr","​Expériences"​);​ 
 +$corpusMetadataExport->​setIntitule(SDE_INTITULE_FICHE,​ "​fr",​ "​Expérience n°"​);​ 
 + 
 +//Ajout des posts des expériences (12 est l'​identifiant du terme correspondant à la catégorie des expériences) 
 +addPosts($pdo,​ $scrutariDataExport,​ 12, $postCensus,​ "​experience"​);​ 
 + 
 +//Création du corpus monographie correspondant aux fiches de http://​www.comedie.org/​ressources/​monographies/​ 
 +$corpusMetadataExport = $scrutariDataExport->​newCorpus("​monographie"​);​ 
 +$corpusMetadataExport->​setIntitule(SDE_INTITULE_CORPUS,​ "​fr","​Monographies"​);​ 
 +$corpusMetadataExport->​setIntitule(SDE_INTITULE_FICHE,​ "​fr",​ "​Monographie n°"​);​ 
 + 
 +//Ajout des posts des monographies 
 +addPosts($pdo,​ $scrutariDataExport,​ 15, $postCensus,​ "​monographie"​);​ 
 + 
 +//Création du corpus video correspondant aux fiches de http://​www.comedie.org/​ressources/​videos/​ 
 +$corpusMetadataExport = $scrutariDataExport->​newCorpus("​video"​);​ 
 +$corpusMetadataExport->​setIntitule(SDE_INTITULE_CORPUS,​ "​fr","​Vidéos"​);​ 
 +$corpusMetadataExport->​setIntitule(SDE_INTITULE_FICHE,​ "​fr",​ "​Vidéo n°"​);​ 
 + 
 +//Ajout des posts des vidéos 
 +addPosts($pdo,​ $scrutariDataExport,​ 18, $postCensus,​ "​video"​);​ 
 + 
 +//Création du corpus lecture correspondant aux fiches de http://​www.comedie.org/​ressources/​notes-de-lecture/​ 
 +$corpusMetadataExport = $scrutariDataExport->​newCorpus("​lecture"​);​ 
 +$corpusMetadataExport->​setIntitule(SDE_INTITULE_CORPUS,​ "​fr","​Notes de lecture"​);​ 
 +$corpusMetadataExport->​setIntitule(SDE_INTITULE_FICHE,​ "​fr",​ "Note de lecture n°"​);​ 
 + 
 +//Ajout des posts des notes de lecture 
 +addPosts($pdo,​ $scrutariDataExport,​ 14, $postCensus,​ "​lecture"​);​ 
 + 
 +//Création du thésaurus motcle 
 +$thesaurusMetadataExport = $scrutariDataExport->​newThesaurus("​motcle"​);​ 
 +$thesaurusMetadataExport->​setIntitule(SDE_INTITULE_THESAURUS,"​fr","​Mots-clés"​);​ 
 + 
 +//Ajout des termes, les mots-clés sont distingués des autres termes par la taxonomie mots-clefs 
 +addTerms($pdo,​ $scrutariDataExport,​ "​mots-clefs",​ $postCensus,​ "​motcle"​);​ 
 + 
 +//Fin de l'​export 
 +$scrutariDataExport->​endExport();​ 
 +</​code>​ 
 + 
 +Ce script peut facilement être adapté à un autre site sous Wordpress. Les grandes différences d'un site à l'​autre sont la façon avec laquelle les posts que l'on veut extraire sont distingués des autres. Ici, la sélection se fait grâce à des termes (table wp_term et wp_term_taxonomy) spécifique
  
  
  
  
scrutaridata/exportapi/php.1473257967.txt.gz · Dernière modification: 2016/09/07 16:19 par vincent
CC Attribution-Share Alike 4.0 International
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0