Hugo

Lookup order when both page and partial templates are costumized?

I have set up a Hugo (0.58.3) site using the Academic theme. I am now customizing some of the page templates for specific content categories. I wanted for example a custom template for publications. The Academic theme comes with a default template in

/themes/hugo-academic/layouts/publication/single.html

I created a modified version of this, followed the Hugo manual instructions and placed it in my site’s

/layouts/publication/single.html

Lookup worked as expected, at least all publications now got served with the customized page.

This template does however make use of a partial page_header.html, which I also wanted to change. I followed the same approach, i.e. I replaced the original

/themes/hugo-academic/layouts/partials/page_header.html

with a customized version in my site’s

/layouts/partials/page_header.html

The problem I am struggling with is that the customized page_header.html partial is now only applied to other default page templates that also make use of it, e.g.

/themes/hugo-academic/layouts/talk/single.html
/themes/hugo-academic/layouts/project/single.html

All which are the default templates that came with the theme. My customized publication template, does however still apply the theme’s default page_header.html partial and not my customized one.

I have been going over the lookup order rules in the documentation and tried to find a similar question in this forum, but haven’t been able to solve this and would be very grateful for input.

I am not sure if this is specific to the Academic theme, but haven’t tried with any other theme.

I have not read your entire post, but I can say this:

A partial in /layouts/partials/page_header.html in your PROJECT will always win over /layouts/partials/page_header.html in any theme. If this isn’t the case, and I very much doubt it because we got millions of tests in this area, then It’s a bug.