Custom project taxonomy list not showing after deploy

I made a custom taxonomy called projects:

Here’s the layouts/_default/projects/ templates,

When I run hugo locally, I see my two projects and verified the projects/index.html is being created, but when it push it to GitHub, and Amplify builds it with Hugo 0.73, it doesn’t show up: https://tobilehman.com/projects/

What am I doing wrong?

I believe that you should take the projects files out of the _default folder and put it directly under layouts.

In other words, try this folder structure:

├───config.yaml
│
├───content
│       article1.md
│
└───layouts
    ├───projects
    │       list.html
    │
    └───_default
            list.html
            single.html

You can check out this working example I made to test it

The default folders is just a fall back if everything else fails, I think that its subdirectories are never read.

2 Likes

I tried that, still don’t see the list, I even added the config.yaml to the appropriate directory. Is there a way I can debug what hugo is doing?

Hi there,

I tried your project locally and I can see the two projects listed in /projects/

I tested with both 0.79 and 0.73

1 Like

Yup, me too. I see that public/projects/index.html lists both “crib-calc” and the “manipulate-mediastreams” projects. Isn’t that the expected result, at least before deployment?

1 Like

Yes, although I don’t see the index. For example, I have https://tobilehman.com/projects/manipulate-mediastreams/, but only because I could guess the url.

https://tobilehman.com/projects/index.html is empty

I have a theory. public/projects/index.html is rendered first as a section, and then it’s overwritten as a taxonomy. To @pointyfar and me, the order was reversed for some reason, so we couldn’t reproduce the mistake.

You can test this by adding any content with a project, such as:

---
title: "Hello"
projects: "hello from the taxo"
---

Then that page will appear on the list.

If you want to define content for each taxonomy term (which is how the concept appears in the docs), you have to do it with a slightly different structure:

├───crib-calc
│       _index.md
│
└───manipulate-mediastreams
        _index.md

As a result, proyects won’t be rendered as a section. I think.
I tested this and it works, but we have learned the hard way that that’s no guarantee :joy:

1 Like

That was it! Thank you! https://tobilehman.com/projects/

1 Like

Hm, I get the feeling that there’s still some overwriting at play here. Maybe I should open an issue, because it fails too silently. I’ll investigate later.

But anyway, glad to help.

TL;DR: There IS some overwriting, but that doesn’t cause a problem right now.:man_shrugging:


I’m back. Sorry to keep posting :upside_down_face: but I discovered a useful tool to figure out if the outputs are getting overwritten, which is the --path-warnings flag.

PS C:\Users\agust\code\github.com\tobilehman.com> hugo --path-warnings

The result of this command for the current version of your repo is:

Start building sites …
...etc etc...
WARN 2020/12/16 23:35:42 Duplicate target paths: 
C:\Users\agust\code\github.com\tobilehman.com\public\projects\index.html (2), 
C:\Users\agust\code\github.com\tobilehman.com\public\projects\index.xml (2)
Total in 6307 ms

I’m now ready to stop posting for the day (I don’t know what got into me to be honest) and give it a rest so I don’t get banned. Cheers to everyone.

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.