gridsome.server.js 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. const axios = require('axios')
  2. module.exports = function (api) {
  3. api.loadSource(async store => {
  4. store.addMetaData('titreDuProjet', 'La métropole performative ?')
  5. store.addMetaData('sousTitre', 'Récits et échelles de la fabrique institutionnelle métropolitaine de rouen')
  6. store.addMetaData('auteurs', ['Jean Debrie','Xavier Desjardins'])
  7. let data_chapters = await axios.get('https://popsu.strapi.figli.io/chapitres')
  8. // Ajout des chapitres
  9. const chapterContent = store.addContentType({
  10. typeName: 'chapitres',
  11. })
  12. for (const item of data_chapters.data) {
  13. chapterContent.addNode({
  14. id: item.id,
  15. titre: item.titre,
  16. contenu: item.contenu,
  17. })
  18. }
  19. let data_sections = await axios.get('https://popsu.strapi.figli.io/sections')
  20. // Ajout des sections
  21. const sectionContent = store.addContentType({
  22. typeName: 'sections',
  23. })
  24. for (const item of data_sections.data) {
  25. sectionContent.addNode({
  26. id: item.id,
  27. titre: item.titre,
  28. contenu: item.contenu,
  29. })
  30. }
  31. let data_fonds = await axios.get('https://popsu.strapi.figli.io/fonds')
  32. // Ajout des fonds
  33. const fondContent = store.addContentType({
  34. typeName: 'fonds',
  35. })
  36. for (const item of data_fonds.data) {
  37. fondContent.addNode({
  38. id: item.id,
  39. url: item.image.url,
  40. })
  41. }
  42. })
  43. }