Default Configuration for Themes

Hi, I’ve been dabbling in theme creation for a bit and was wondering whether it was possible to designate any defaults configurations for a theme I’ve been working on.

For Example, if I want to make a single page theme without any posts which only contains a single content post, it would be unnecessary to use some features like taxonomies. However, turning it off in a hugo.toml with disableKinds = [‘taxonomy’, ‘term’] within the theme directory doesn’t seem to work.

Any ideas to get this working?

Some settings are merged, others are not. For example, I would be unhappy if a theme were able to override my security config, or do something like:

[markup.goldmark.renderer]
unsafe = true

I see, so for something like disableKinds, if I understand correctly, it isn’t merged?

Is there a list of these defaults I can refer to?

If we merged disableKinds you would be able to remove content… so no.

I don’t know if any of the root configs can be merged, but you can definitely merge these:

  • params
  • menus
  • mediatypes
  • outputformats

See https://gohugo.io/getting-started/configuration/#merge-configuration-from-themes

You’re right, I didn’t think of that. I guess I’ll have to implement a default for taxonomies after all. :sweat_smile:

I’ll check that out, help is much appreciated :grin: