-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathgridsome.server.js
50 lines (43 loc) · 1.41 KB
/
gridsome.server.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
// Server API makes it possible to hook into various parts of Gridsome
// on server-side and add custom data to the GraphQL data layer.
// Learn more: https://gridsome.org/docs/server-api/
// Changes here require a server restart.
// To restart press CTRL + C in terminal and run `gridsome develop`
const createPagesTemplates = require("./server/pages");
const createArticlesTemplates = require("./server/articles");
const schemaForm = require("./server/schema-form");
const schemaMenu = require("./server/schema-menu");
const schemaImages = require("./server/schema-images");
const axios = require("axios");
module.exports = function (api) {
api.loadSource(async (actions) => {
// Use the Data Store API here: https://gridsome.org/docs/data-store-api/
/**
* ACF OPTIONS
*/
const { data } = await axios.get(
process.env.GRIDSOME_WP_URL + "/wp-json/acf/v3/options/option/"
);
const collection = actions.addCollection({
typeName: "AcfOption",
});
collection.addNode(data.acf);
schemaForm({ actions });
schemaMenu({ actions });
schemaImages({ actions });
});
api.createPages(async ({ graphql, createPage }) => {
// Use the Pages API here: https://gridsome.org/docs/pages-api/
/**
* PAGES
*/
await createPagesTemplates({
graphql,
createPage,
});
await createArticlesTemplates({
graphql,
createPage,
});
});
};