I want you to build the content architecture and CMS foundation of my personal WordPress website.
I have already imported a website template, but the template is not currently aligned with the website structure we are building. Do not redesign the template yet. The important task now is to build the correct WordPress structure underneath it so we can design the frontend later.
What we are building
This is a personal professional + intellectual website focused on:
Sustainable Development | Programme Support | Knowledge | Digital Innovation
The site will contain four major content areas:
- Work / Projects
- Articles
- Books
- Publications
Each section needs a listing/archive page and individual content pages with clean permalinks.
The architecture should support this:
/work/→ project listing/work/project-name/→ individual project/articles/→ article listing/articles/article-name/→ individual article/books/→ books listing/books/book-name/→ individual book/publications/→ publications listing/publications/publication-name/→ individual publication
Also keep normal WordPress Pages for:
//about//contact/
Step 1: Audit first
Before making changes:
- Inspect the active theme
- Inspect the imported template
- Inspect the page builder
- Inspect all installed plugins
- Check whether ACF, CPT UI or similar functionality already exists
- Do not install duplicate plugins
- Do not delete the imported template
- Do not change the site’s visual design
- Do not remove existing content
Use the existing setup wherever practical.
Step 2: Create the CPTs
Create these three Custom Post Types:
1. Projects / Work
Internal CPT can be projects, but the public URL must be:
/work/
Individual URLs:
/work/project-name/
Fields:
- Organisation
- Role
- Start Date
- End Date
- Location
- Project Type
- Overview
- My Contribution
- Skills / Methods
- Outcomes
- Images
- Related Articles
- Related Publications
Project Types:
- Sustainable Development
- Programme Support
- Knowledge Management
- Digital Innovation
- Communications
- Research
- Community / Development
- Other
2. Books
CPT:
books
Archive:
/books/
Individual URL:
/books/book-name/
Fields:
- Author
- Cover
- Publication Year
- Date Read
- Reading Status
- Genre
- My Thoughts
- Key Ideas
- What I Disagreed With
- My Take
- Related Articles
- Related Books
Reading Status:
- Reading
- Read
- Want to Read
- Abandoned
Important: these pages are my reflections on books, not copies or AI-generated summaries of the books.
3. Publications
CPT:
publications
Archive:
/publications/
Individual URL:
/publications/publication-name/
Fields:
- Authors
- Publication Year
- Status
- Abstract
- Keywords
- DOI
- External URL
- Citation
- Related Articles
- Related Projects
Publication Status:
- Preprint
- Working Paper
- Manuscript
- Conference Paper
- Published
- Other
Be accurate about publication status. For example, an SSRN preprint should remain clearly labelled as a preprint.
Step 3: Articles
Use normal WordPress Posts for articles rather than creating an Article CPT.
The public archive should be:
/articles/
Individual URLs:
/articles/article-name/
Use categories or an appropriate taxonomy for article type if useful:
- Articles
- Essays
- Thought Pieces
- Notes
- Reflections
- Book Reflections
Also create a reusable Topics taxonomy.
Initial topics:
- Sustainable Development
- Governance
- Institutions
- Knowledge Management
- Development
- Environment
- Technology
- Education
- Science
- Philosophy
- Society
- Research
Do not create unnecessary taxonomies.
Step 4: Relationships
Set up relationships between content types where appropriate:
- Books ↔ Articles
- Books ↔ Books
- Publications ↔ Articles
- Projects ↔ Articles
- Projects ↔ Publications
For example:
A book page should be able to show:
Related Articles
And an article about a book should be able to show:
Related Book
A project should be able to show related publications and articles.
Use ACF relationship/post object fields if ACF is available and appropriate.
Step 5: Demo content
Create a small amount of clearly identifiable demo content to test the system.
Create at least:
Projects
- Nature for Health
- One fictional/demo project clearly labelled as DEMO
Books
- The Subtle Art of Not Giving a Fuck
- One additional demo book
Articles
- One demo article
- One article connected to the demo book
Publications
- One demo publication marked
Preprint
Use realistic structure, but do not invent fake professional achievements or claim that fictional projects/publications are real.
Clearly label fictional test content as DEMO.
The purpose is to verify that:
- CPTs work
- Fields save
- Relationships work
- Archives work
- Individual pages work
- Permalinks work
Step 6: Permalinks
Configure clean URLs with no dates or numeric IDs.
Required structure:
/work/project-name/
/articles/article-name/
/books/book-name/
/publications/publication-name/
Do not use:
/2026/09/article-name/
or
/?p=123
Set WordPress to use clean Post Name permalinks where appropriate.
Step 7: Archive/listing pages
Make sure these sections have working archive/listing pages:
/work//articles//books//publications/
They should eventually be capable of displaying cards/listings with information such as:
Books
- Cover
- Title
- Author
- Reading status
- Date read
Articles
- Title
- Date
- Topic/category
- Excerpt
Projects
- Project name
- Organisation
- Role
- Dates
- Project type
Publications
- Title
- Year
- Status
- Authors
Do not spend significant time styling these yet. Functionality first.
Step 8: Do NOT redesign
This is very important.
The imported template is only there as the current website foundation. It does not represent the final architecture or visual direction.
For now:
- Do not redesign the homepage
- Do not redesign headers
- Do not redesign footers
- Do not replace the template
- Do not create elaborate layouts
- Do not spend time on colours/fonts/animations
- Do not create fake portfolio content
We will handle the frontend design after the CMS/content architecture is working.
Step 9: Test everything
After implementation, test:
- Create a project and confirm all fields save.
- Create a book and confirm all fields save.
- Create a publication and confirm all fields save.
- Create an article.
- Connect an article to a book.
- Connect a project to an article/publication.
- Confirm archive pages display the content.
- Confirm every individual permalink resolves.
- Confirm relationships display correctly.
- Confirm there are no obvious permalink conflicts.
- Confirm the existing imported template/content has not been unnecessarily destroyed.
Final report
When finished, give me a concise report containing:
- Plugins used
- CPTs created
- Taxonomies created
- Custom fields created
- Relationships created
- Demo content created
- URL structure
- What was tested successfully
- Any conflicts/problems discovered
Do not redesign the site yet.
The goal of this phase is:
Build the engine first. Design the car later.
