Angular Template Hierarchy and Data Fetching
Angular Template Hierarchy and Data fetching Example
In this example we show how to implement the WordPress Template Hierarchy in Angular for use with a Headless WordPress backend using WPGraphQL.
Getting Started
Important
Docker Desktop needs to be installed to run WordPress locally.
- Run
npm run example:setupto install dependencies and configure the local WP server. - Configure CORS: Create a file named
.envinside the/backenddirectory and add the following content to set the allowed frontend URL:(For more details on the backend service, please refer to theFRONTEND_URL=http://localhost:4200/backend/README.mdfile.) - Run
npm run backend:startstarts the backend server for template fetching at http://localhost:3000/api/templates - Run
npm run example:startto start the WordPress server and Angular development server.
Note
When you kill the long running process this will not shutdown the local WP instance, only Angular. You must run npm run example:stop to kill the local WP server.
Trouble Shooting
- I get “Page Not Found. Sorry, the page you are looking for does not exist. Please check the URL.” when opening the Angular app and trying to navigate through it.
- Run
npm run backend:startand verify that http://localhost:3000/api/templates returns correct data. - Verify that you have created the
/backend/.envfile with the correctFRONTEND_URLto resolve CORS issues. - Check for any errors in the console.
- In some cases, you might have to install
@angular/cliglobally. In/example-app/runnpm install -g @angular/cli@latest - To reset the WP server and re-run setup you can run
npm run example:pruneand confirm “Yes” at any prompts.