Hi everyone, I’m getting started on developing things for Discourse, and I’m working on a theme component.
Link: GitHub - NateDhaliwal/discourse-persistent-banner: A theme component for Discourse that cannot be closed by the user.
When putting it on Theme Creator, the settings don’t appear, even though I have a settings.yml
. Any ideas?
1 Like
Moin
September 20, 2024, 8:28am
2
Do you see any error messages at theme creator?
I think you have to use the same quotation marks at the beginning and end.
This could also be a problem. I would try default: ""
Maybe you want to add “block” to the choices. Otherwise you have to use the revert button to choose that again.
2 Likes
Whoops, just realised I was clicking on ‘Create new’ instead of importing it…
But now, when I try using the URL, it says that about.json
is invalid or doesn’t exist, asking me if it is a theme.
About.json:
{
"name": "Persistent banner",
"about_url": "",
"license_url": "https://github.com/NateDhaliwal/discourse-persistent-banner/blob/main/LICENSE"
"component": true,
"version": 1.0.0,
"authors": "NateDhaliwal"
}
Is there something wrong?
merefield
(Robert)
September 20, 2024, 10:48am
4
Missing comma after license URL.
4 Likes
@merefield Would version be in ""
?
1 Like
merefield
(Robert)
September 20, 2024, 10:58am
6
Probably that too. Just look at examples.
1 Like
Thanks! One last one, I can’t seem to get the variable to display.
Was it because I didn’t initialise it properly? I tried following the guide…
Would I have to use
import Component from "@glimmer/component";
export default class PracticeComponent extends Component {
get bannerLinks() {
return JSON.parse(settings.banner_links);
}
}
then?
1 Like
merefield
(Robert)
September 20, 2024, 11:13am
10
Look at the billions of examples
1 Like
merefield
(Robert)
September 20, 2024, 11:22am
11
You only need to use a gjs file if you need to process stuff with javascript, otherwise an hbs template file might suffice. Experiment.
1 Like
I’m not sure if I’m going in the right direction.
I made javascripts/persistent-banner.hbs
with this:
But nothing shows up. Tried putting it in different places, still won’t work.
Tried looking at example, but many don’t seem to help.
Any advice?